您的位置:首页 > 产品设计 > UI/UE

[SoapUI] 通过SoapUI发送POST请求,请求的body是JSON格式的数据

2015-06-26 16:17 866 查看
通过SoapUI发送POST请求,请求的body是JSON格式的数据:

data={"currentDate":"2015-06-19","reset":true}

而且通过Fiddler抓取页面报文 Content-Type 是 application/x-www-form-urlencoded

一开始我将Content-Type = application/x-www-form-urlencoded 加到Header 里面。

SoapUI里面的 Media Type 选择 application/json,body 的内容填 data={"currentDate":"2015-06-19","reset":true}

应答报文返回的错误代码告诉我是json数据的格式不正确。

后来又尝试了很多办法,将body的内容通过URLEncode进行编码之后再放进去,或者将Media Type从下拉菜单里一个个的试,都不行。

只有将data作为name, {"currentDate":"2015-06-19","reset":true}作为value 以style=QUERY的形势加到报文的Header里面去,才可以正常的返回应答。

但是,这不是正常的解决办法,因为,假使这个 body 的数据很长,全部加到报文头里面,会超出报文头的长度限制。

其实,办法非常简单,从一开始就应该想到,只是被SoapUI的界面设计给误导了。

只需要将 Media Type 手工填成application/x-www-form-urlencoded (下拉列表中没有这个可选),

body的内容直接填 data={"currentDate":"2015-06-19","reset":true} 就可以了。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: