使用tsung POST请求发送json

时间:2014-05-08 12:23:11

标签: xml json erlang tsung erl

我正在尝试使用Tsung

创建POST请求
<request> 
  <http url="api.whatever.com" method="POST" version="1.1" contents=""></http>
</request>

如何在contents属性中发送JSON文档?

contents='{"name": "alex"}' 

当然无效......

我可以通过POST请求发送JSON吗?

3 个答案:

答案 0 :(得分:6)

我可以通过替换" &quot;并添加内容类型标头应用程序/ json来实现此目的

所以我的例子会变成:

content_type='application/json' contents='{&quot;name&quot;: &quot;alex&quot;}

答案 1 :(得分:1)

(从Tsung 1.3开始)绝对最简单的方法是make use of the contents_from_file attribute.,这样可以避免使用大量转义数据污染代码,并使您可以获取任何原始数据并将其转储到您选择的文件中

<http url="mypage" 
      method="POST" 
      content_type='application/json'
      contents_from_file="/tmp/myfile.json" 
/>

答案 2 :(得分:0)

发送json时,我通常会在Wireshark中捕获一些成功的请求,而不会运行。

然后我找到其中一个数据包的IP地址,选择“Analyze”菜单并选择“Follow TCP Stream”。

这允许我查看发送的实际数据。

数据看起来像这样:

data.text=U.S.+intelligence+agents+have+been+hacking+computer+networks%0A++++++++++++++++++++++++around+the+world+for+years%2C+apparently+targeting+fat+data%0A++++++++++++++++++++++++pipes+that+push+immense+amounts+of+data+around+the+Internet%2C%0A++++++++++++++++++++++++NSA+leaker+Edward+Snowden+t&amp;type=text&amp;data.sender-id=8a5b1c2f-0589-464c-82c4-b8f4e280511a'

然后我将tsung xml修改为:

content_type='application/x-www-form-urlencoded' contents=''

将数据粘贴到内容中。

您也可以尝试使用“但我没有运气来逃避报价。”