0

我正在尝试序列化 AMF 正文并使用 RestClient.post 发送它。

从 Charles 代理,我可以反序列化我的请求正文并显示如下:

# s is the raw binary from request body
pp RocketAMF::Envelope.new.populate_from_stream(s).messages

在此处输入图像描述

但是,我无法弄清楚如何序列化这样的对象并将其(使用 RestClient.post)发送到正文中。

4

1 回答 1

2

您需要更改它使用的 URL,但以下是正确的方法。

require 'rubygems'
require 'RocketAMF'
require 'rest-client'

data = [] # whatever data you want
env = RocketAMF::Envelope.new :amf_version => 3
env.messages << RocketAMF::Message.new('BatchController.authenticate_iphone', '/1', data)
res = RestClient.post "http://localhost:9292/amf", env.to_s, :content_type => 'application/x-amf'
puts RocketAMF::Envelope.new.populate_from_stream(res).inspect
于 2013-04-05T02:39:48.230 回答