如何将XML字符串通过POST方法发送到webservice进行测试?

22
我们已经开发了一个RESTful web服务,期望接收一个XML字符串作为“参数”。为了让QA测试web服务,我正在寻找一种简单的方法将XML字符串POST到URL,然后显示服务器返回的XML响应。是否有一种简单的方式来POST XML字符串到URL?

11个回答

22

获取Firefox海报插件

一款开发者工具,用于与Web服务和其他Web资源交互,可以进行HTTP请求、设置实体正文和内容类型。这使您能够与Web服务进行交互并检查结果。


1
还有Chrome Poster。它不支持POST变量 - 不确定FF是否支持。 - Steve Bennett
1
Firefox Poster 不兼容 Firefox 57(量子)。 - Stevoisiak

9

我用wget来实现这个功能,它有Windows和Linux版本。虽然没有图形界面,但是对于这样简单的任务来说,并不需要图形界面。

例如:

wget "http://url_of_my_web_service?param1=123&param2=abc" --post-file="xmlTestFile.xml" --header="Content-Type:text/xml"

如果你想发送一个xml字符串而不是一个xml文件,请使用--post-data="string"

其中xmlTestFile.xml是在运行wget命令的同一目录下的一个xml文件。


如果按照原帖所说,您正在POST参数,则可能需要Content-Type: application/x-www-form-urlencoded。 - Harold L
使用 --output-document= 文件 和可能的 --server-response - Jeremy Stein

5

SoapUI 支持 RESTful 服务和基于 SOAP 的服务。


5

Chrome的DHC by Restlet很不错。但是由于某些原因,我无法使用“表单”和“转换”选项。


2
"

SOAPUI 是一个非常好的测试 Web 服务的工具(带有图形用户界面)。

"

1

针对Firefox插件的补充,由于Poster似乎已经过时,您可以尝试使用HttpRequester


1

这显然是一个老问题,但是谷歌把我带到了这里,所以我想添加另一个资源:

http://www.hurl.it/

告诉它要发送信息的位置,您希望如何发布以及要发送的数据,它将打印出网站的响应。

1

不是图形界面,但curl是一款流行的工具。



0
如果你使用的是OSX系统,HTTP Client App对于调试HTTP服务非常有用,可以查看headers、XML或者其他你需要的内容。

http://ditchnet.org/httpclient/


0

HttpMaster 可以用于此测试场景。

它支持 XML 发布(如果您需要在一个批处理中进行多个请求,则可以使用可能的参数)和查看器(原始和友好),以查看响应。 如果您只需要简单的发布和获取,那么这样的全功能工具可能太过复杂; 也许一些浏览器插件对于简单的请求就足够了。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接