Action Message Format

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. Дата обращения: 18 октября 2009. Архивировано 28 августа 2008 года.
  2. AMF 3 Specification. Дата обращения: 4 июля 2009. Архивировано из оригинала 20 марта 2012 года.