AMF(Action Message Format)

AMF是Adobe独家开发出来的通信协议,它采用二进制压缩,序列化、反序列化、传输数据,从而为Flash 播放器与Flash Remoting网关通信提供了一种轻量级的、高效能的通信方式。如下图所示:

 

AMF(Action Message Format)是一种 binary format的资料型态,透过 AMF overHTTP的方式将flash端资料编码后传回server,server端的remotingadaptor接收到资料后则会译码回正确的 native对象,交给正确的程序处理。

AMF最大的特色在于可直接将Flash内置对象,例如Object, Array, Date, XML,传回服务器端,并且在服务器端自动进行解析成适当的对象,这就减轻了开发人员繁复工作,同时也更省了开发时间。由于AMF采用二进制编码,这种方 式可以高度压缩数据,因此非常适合用来传递大量的资料。数据量越大,Flash Remoting的传输效能就越高,远远超过Web Service。至于XML, LoadVars和loadVariables() ,它们使用纯文本的传输方式,效能就更不能与Flash Remoting相提并论了。

注意:Flash Remoting需要浏览器支持Binary POST,Flash 播放器在Netscape 6.x.环境下运行Flash Remoting会不起作用(Flash Remoting调用没有效果也不返回错误), Netscape 7已经纠正了这个bug 。对于早期Safari和Chimera版的苹果机也有这个问题。

同样是轻量级数据交换协议,同样是通过调用远程服务,同样是基于标准的HTTP和HTTPS协议, Flash Remoting为什么选择了使用AMF而放弃了SOAP与Flash 播放器通信呢? 有如下原因:

1. SOAP将数据处理成XML格式,相对于二进制的AFM太冗长了;
2. AMF能更有效序列化数据;因为AMF的初衷只是为了支持Flash ActionScript的数据类型,而SOAP却致力于提供更广泛的用途;
3. AMF支持Flash 播放器 6只需要浏览器增加4 KB左右(压缩后)的大小,而SOAP就大多了;
4. SOAP 的一些头部文件请求在Flash 播放器 6不支持。那Flash 播放器 6为什么能访问基于SOAP的Web服务呢?原来Flash Remoting网关将SOAP请求在服务器端与转换成AFM格式,然后利用AFM与Flash 播放器通信。另外,AMF包中包含onResult事件(比如说response事件)和onStatus事件(比如说error事件),这些事件对象在 Flash中可以直接使用。

AMF从Flash MX时代的AMF0发展到现在的AMF3。AMF3用作Flash Playe 9的ActionScript 3.0的默认序列化格式,而AMF0则用作旧版的ActionScript 1.0和2.0的序列化格式。在网络传输数据方面,AMF3比AMF0更有效率。AMF3能将int和uint对象作为整数(integer)传输,并且 能序列化 ActionScript 3.0才支持的数据类型, 比如ByteArray,XML和Iexternalizable。

HTML5地理位置定位 lbs HTML5 地理位置定位 LBS Geolocation 阅读详情

相关推荐

360WiFi共享助手手机版App实战解析

蹭网软件也好,热点共享也罢,它们的本质都不是邪恶的。它们反映出人们对自由连接权利的渴望,也暴露出基础设施覆盖不足的现实。但我们必须意识到:便利不应以牺牲安全与隐私为代价。未来的方向,不该是“如何蹭更多网”,而是“如何共建一个更高效、更公平、更可信的共享生态”。或许有一天,我们会笑着说:“还记得当年要靠‘万能钥匙’才能上网的日子吗?就像我们现在回忆拨号上网的“嘟嘟”声一样。🔚技术终将回归人性,而连接的意义,从来不只是数据传输。

weixin_35995661的博客 1310

Action Message Format--AMF3中英文对照.PDF

Action Message Format AMF3中英文对照 本人翻译 Abstract Action Message Format AMF is a compact binary format that is used to serialize ActionScript object graphs Once serialized an AMF encoded object graph may be used to persist and retrieve the public state of an application across sessions or allow two endpoints to communicate through the exchange of strongly typed data 动作消息格式 AMF 是一种压缩二进制格式 用来系列化ActionScript对象图 一旦系列化 AMF编码对象图可以用来持久化和跨会话检索应用程序的公开状态或者允许二端通过交换强类型数据进行通信">Action Message Format AMF3中英文对照 本人翻译 Abstract Action Message Format AMF is a compact binary format that is used to serialize ActionScript object graphs Once serialized an AMF encoded object graph may be used to persist and retrieve the public state of an application across s [更多]

AMF(ActionScript Message Format) 格式说明文档(v0)

AMF(ActionScript Message Format) 格式说明文档(v0)

关于Action Message Format协议即AMF协议完整的讲解

229, 190, 174, 229, 133, 137, 231, 187, 152, 230, 162, 166, 229, 183, 165, 228, 189, 156, 229, 174, 164 这里是UTF8数据占21字节 解码后为[微光绘梦工作室]这里要注意这4个字节表示的是Content编码后的Byte长度 默认不进行读取和写入,在编码的时候默认都会编码成255,255,255,255 或者0,0,0,0 有的也会写入完整的Content长度 默认都会忽略。

qq_66406157的博客 424

rtmp直播协议介绍

1.概述 rtmp协议是adobe公司发明的直播流协议,是目前主流的视频上传协议。 2.术语 AMF(Action Message Format)是在flash和flex中与远程服务端交换数据的一种格式。它是二进制格式,Flash应用与服务端或数据库通过RPC交换数据时,通常都采用这种格式。AMF 1 诞生于Flash Player6,发展到现在已经变成了了AMF

yhc223的专栏 5496

手机地理位置共享引发的不安全因素

前几天看到新闻,称有些不法分子利用微信等工具来进行抢劫强奸等犯罪。博主一开始想到的场景是这样的: 一个不法分子躲在黑暗的角落一直在刷新微信看附近的人,突然发现有一个距离越来越近,然后查看附近定位到目标后实施犯罪。 上面是博主认为...

cuisha2322的博客 1672

定位 互相发现设备(地理位置共享设备)

share geographical position======SGP每个SGP设备有唯一的IDSGP把自己的经度和纬度上传到服务器,并设置好友可以访问的权限SGP可以下载好友的地理位置信息SGP上有地图,可以把好友在地图上标注出来

fantasyagain的专栏 843

HTML5手机定位-使用百度API

代码可直接在电脑或移动设备上运行,手机上记得打开“位置共享”! *{ height: 100%; //设置高度,不然会显示不出来 } $(function(){ navigator.geolocation.getCurrentPosition(translatePoint); //定位 }); function translatePoint(

Less Is More 5001

移动云计算应用

<br /><br />基于地理位置的移动社交网<br /> <br />一、应用综述:<br />         随着智力手机的发展,智能手机的功能越来越强大,具有了wifi等计算机才具有的功能。从MTK等简单操作系统演变成为了Android、ios等多种高级操作系统。并可以支持开发者开发各种应用软件,从这个层次上说,手机已经成为了移动式电脑。互联网能够拉近人与人之间的距离。各种社交网络已经成为人们生活中不可缺少的部分,比如人们熟悉的人人网、FaceBook等等。<br />         我们在An

小忍大乱的专栏 841

Google地图推出实时定位跟踪服务Google Latitude 外遇的克星

<!--google_ad_client = "pub-4382955739270299";/* 468x15, 创建于 08-9-5 */google_ad_slot = "2818501739";google_ad_width = 468;google_ad_height = 15;// -->据Google手机官方博客报道,Google手机地图推出一项

Gavin luo 我们共同努力 1746

Google Latitude 试用手记

上周五,Google 发布 了一款备受期待的位置跟踪服务:Latitude 。该服务使用智能手机(如 Google Android, BlackBerry, Windows Mobile)内置的 GPS 将你当前位置定位到地图以向朋友们分享。Robert Strohmeyer 在 PC World 撰文分享了他对 Google Latitude 的试用手记。关于 Latitude 的其它资料请

COMSHARP CMS 专栏 1956

如何实现根据照片获取地理位置及如何防御照片泄漏地理位置

【阅读全文】 首先,说明一下python确实可以根据照片获取地理位置,但是也是有一定的限制条件的。 获取照片地理位置的实现思路是这样的:通过提取照片中的经纬度信息。然后通过经纬度信息找到具体的地理位置信息。 安装可以读取经纬度信息的python非标准库exifread pip install exifread 将该模块导入到当前代码块中。 import exifread as ex 编写照片信息读取函数,获取照片中的经纬度信息。 def read_image(): ''' .

梦在硅谷的博客 4174

DNS相关的。。浏览器的网页打不开,原因是DNS设置出错。浏览器的网页,打开速度慢

电脑的QQ微信都能上网,但浏览器的网页打不开,原因是DNS设置出错

weixin_44055026的博客 3417

2016.7.8

场景: Q:济南历下区包含哪些地方 A:好像经十路南边是历下区? Q:我也不知道。 理想状态: 要是能有一个屏幕(或者投影到墙上),时时分享手机的屏幕,还有音频。 转载于:https://www.cnblogs.com/shihao316558512/p/9736991.html...

NickWei1994的专栏 118

“海星通”软件许可使用协议

“海星通”软件许可使用协议 (用户服务协议和隐私政策) 【声明】 欢迎您使用“海星通”软件及服务! 为使用“海星通”软件(以下统称“本软件”)及服务,您应当阅读并遵守《“海星通”软件许可使用协议》(以下简称“本协议”) 。请您务必审慎阅读本协议,充分理解各条款内容,特别是免除或者限制责任的条款,以及开通或使用某项服务的单独协议,并选择接受或不接受。需要特别提示的是,如您选择使用本软件或服务及其衍生服务,本协议中的“用户”即指代您。 本协议条款构成您使用本软件或服务及其衍生服务之先决条件,您应当在仔

sinat_36721601的博客 749

## HTML5关键知识点之地理位置API解析与应用

本文介绍了HTML5地理位置API的核心知识点:1)地理位置特性通过多种方式识别用户位置,强调用户授权机制保障隐私安全;2)地理位置API作为桥梁将位置信息传输至信任站点,主流浏览器普遍支持该功能;3)代码实现需从navigator.geolocation入手,调用getCurrentPosition方法时需进行浏览器兼容性检测,并注意不同浏览器的用户授权提示差异。文章通过概念解析、代码示例和表格总结,系统讲解了该API的应用要点与注意事项。

2301_78506709的博客 4816

Facebook Messenger应用增加地理位置实时共享功能

北京时间3月28日早间消息,Facebook周一在Messenger聊天应用中增加了一项功能,允许用户最多每过1个小时共享一次地理位置,从而加大与苹果和谷歌地图之间的竞争。 Messenger产品主管斯坦·舒德诺夫斯基(Stan Chudnovsky)表示,该公司发现,当人们通过Messenger与朋友和家人聊天时,最常使用的一句话是“你还有多远?”或...

weixin_33929309的博客 224
上一篇: FLEX实践—动态切换应用皮肤
下一篇: panel 不能获取键盘事件问题 解决
flyhighwl
博客等级 码龄15年 8粉丝 139原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值