Как Flash взаимодействует с сервисами/скриптами на серверах через AMF?
Данные передаются по TCP/IP-соединению. Иногда используется существующее HTTP-соединение, а в других случаях для данных AMF открывается новое TCP/IP-соединение. Когда HTTP или дополнительные TCP-соединения открыты, вероятно, используется интерфейс сокетов. AMF определенно путешествует по TCP-соединению, и интерфейс сокетов - это практически единственный способ открыть такое соединение.
Передаваемые данные состоят из типов данных ECMA-скрипта (Javascript (tm)), таких как «integer», «string», «object» и т. Д.
Для технической спецификации, как объекты кодируются в двоичном виде, Adobe опубликовала спецификации: AMF 3.0 Spec at Adobe.com
Обычно путь AMF-с помощью системы клиент/сервер работает что-то вроде этого:
- Клиент отображает некоторый пользовательский интерфейс и открывает TCP-соединение с сервером.
- Сервер отправляет некоторые данные клиенту, который обновляет свой пользовательский интерфейс.
- Если пользователь делает команду, клиент отправляет на сервер данные по TCP-соединению.
- Продолжайте шаги 2-3, пока пользователь не выйдет.
Например, если пользователь нажимает кнопку «отправить почту» в пользовательском интерфейсе, то клиентский код может сделать это:
public class UICommandMessage extends my.CmdMsg
{
public function UICommandMessage(action:String, arg: String)
{
this.cmd = action;
this.data = String;
}
}
Тогда позже:
UICommandMessage msg = new UICommandMessage("Button_Press", "Send_Mail");
server_connection.sendMessage(msg);
в серверный сервер, сервер также отслеживает соединение для входящего объекта AMF. Он получает сообщение и передает управление соответствующей функции ответа. Это называется «отправка сообщения».
С дополнительной информацией о том, что вы пытаетесь выполнить, я мог бы дать вам более полезные детали.