我的一个测试人员问我关于我们在应用程序中执行的AMF轮询:
flex_amf_call(
"AMF3_call_12",
"Gateway=http://test.url.com:22000/InventoryTesting/boa/messagebroker/amfpolling",
"Snapshot=t19.inf",
MESSAGE,
"Method=null",
"TargetObjectId=/7",
BEGIN_ARGUMENTS,
"<AMF3><object-externalizable-custom><flex.messaging.messages.CommandMessage>\n "
"<destination>InvTestMessaging</destination>\n <messageId>"
"4AF91854-F89E-F56D-EE22-4EC8BBAEA4BC</messageId>\n <timestamp>0</timestamp>\n "
"<timeToLive>0</timeToLive>\n <headers>\n <entry>\n <string>"
"DSEndpoint</string>\n <string>my-polling-amf</string>\n </entry>\n "
"<entry>\n <string>DSId</string>\n <string>{ParamDSValue_string}"
"</string>\n </entry>\n </headers>\n <body serialization=\"custom\" class="
"\"flex.messaging.io.amf.ASObject\">\n <unserializable-parents/>\n <map>\n "
" <default>\n <loadFactor>0.75</loadFactor>\n <threshold>"
"12</threshold>\n </default>\n <int>16</int>\n <int>0</int>\n "
"</map>\n <flex.messaging.io.amf.ASObject>\n <default>\n "
"<inHashCode>false</inHashCode>\n <inToString>false</inToString>\n "
"</default>\n </flex.messaging.io.amf.ASObject>\n </body>\n <correlationId/>"
"\n <operation>0</operation>\n</flex.messaging.messages.CommandMessage>"
"</object-externalizable-custom></AMF3>",
END_ARGUMENTS,
LAST);这个节点是什么意思?
<operation>他们看到的值是0和5。
发布于 2011-09-21 23:59:01
操作为0的CommandMessage属于订阅操作,在特定情况下发起与服务器的会话时会自动发送订阅。操作为5的CommandMessage是"ping“操作,服务器必须以适当填充的AcknowledgeMessage作为响应,否则AMF通信将终止。flash player会根据需要自动发送CommandMessage,无论您使用的是哪种服务器,都应该适当地配置为自动处理它们,或者为它们的处理提供钩子(比如登录和注销操作)。
有关CommandMessage的更多详细信息,请参阅http://livedocs.adobe.com/blazeds/1/javadoc/flex/messaging/messages/CommandMessage.html。
https://stackoverflow.com/questions/7476562
复制相似问题