AMF (формат обмена данными)

AMF (англ. Action Message Format, формат сообщений о действиях) — бинарный формат обмена данными, использующийся в приложениях, написанных на Action Script. Построен на основе протокола Simple Object Access Protocol и используется, преимущественно, для обмена информацией между Adobe Flash и базами данных. Action Message Format более экономичен по трафику по сравнению с XML и позволяет передавать типизированные объекты.


История[ | ]

Adobe Systems опубликовала спецификацию AMF протокола 13 декабря 2007 года и тогда же анонсировала дальнейшую поддержку и развитие формата[1]. Впервые AMF был представлен с Flash Player 6. Следующая версия, получившая название AMF3, появилась с выходом Flash Player 9 и [[AMF 3.0. спецификация http://wwwimages.adobe.com/www.adobe.com/content/dam/Adobe/en/devnet/amf/pdf/amf-file-format-spec.pdf%7CActionScript (недоступная ссылка)]] 3.0[2].

AMF3[ | ]

Новая версия протокола содержит некоторые изменения в типах данных. Сообщение, содержащее заированную AMF3 информацию, имеет байт, определяющий тип сообщения, установленный в 0х11 вместо 0х14, а также содержит дополнительный 0x00 байт в конце заголовка. При этом, AMF3 обратно совместим с предыдущей версией, и может не содержать данной информации.

Маркеры типов данных в AMF3:

  • Undefined — 0x00
  • Null — 0x01
  • False — 0x02
  • True — 0x03
  • Integer — 0x04
  • Double — 0x05
  • String — 0x06
  • XML — 0x07
  • Date — 0x08
  • Array — 0x09
  • Object — 0x0A
  • XML End — 0x0B
  • ByteArray — 0x0C

Поддержка AMF[ | ]

На данный момент, формат AMF поддерживается большинством известных серверных языков и платформ в виде отдельных библиотек или фреймворков.

Платформы:

Фреймворки:

Ссылки[ | ]

  1. AMF 0 Specification
  2. AMF 3 Specification (недоступная ссылка). Дата обращения 4 июля 2009. Архивировано 20 марта 2012 года.