soapui与Curl响应时间差
我在我们的一个数据中心托管了一个使用spring构建的soap服务。当我通过soapui进行测试时,我会在1秒或更短的时间内得到响应。但是,当我通过CURL运行同一个请求时,执行该请求需要30秒以上的时间。我正在运行来自同一台机器的两个命令。是什么导致了这种差异soapui与Curl响应时间差,curl,soapui,Curl,Soapui,我在我们的一个数据中心托管了一个使用spring构建的soap服务。当我通过soapui进行测试时,我会在1秒或更短的时间内得到响应。但是,当我通过CURL运行同一个请求时,执行该请求需要30秒以上的时间。我正在运行来自同一台机器的两个命令。是什么导致了这种差异 curl -H "Content-Type: text/xml; charset=utf-8" -H "SOAPAction:" -d @request.xml <endpoint> curl-H”内容类型:text/
curl -H "Content-Type: text/xml; charset=utf-8" -H "SOAPAction:" -d @request.xml <endpoint>
curl-H”内容类型:text/xml;charset=utf-8“-H”SOAPAction:“-d@request.xml
需要考虑的几件事:
- SOAP请求的媒体类型(
头字段)应该是Content-type
(请参阅)。如果您的编码是UTF-8,那么设置application/SOAP+xml
内容类型:application/soap+xml;字符集=UTF-8
- 您的
标题字段未定义,这意味着SOAPAction
根本不发送该字段。如果使用选项运行curl
,则可以检查此选项curl
- 要按原样发送XML(二进制)负载,可以使用选项,而不是。它将保留换行和回车。对于XML内容,这应该并没有什么区别,但这可能取决于所使用的解析器和模式的严格程度
- 调试
请求时,将请求从echo站点(如)跳出非常有用,还可以使用curl
启用完整的详细信息,甚至可以使用-vvv
检查发送/接收的确切负载-trace*
curl
命令将如下所示:
curl -H 'Content-Type: application/soap+xml; charset=UTF-8' \
-H 'SOAPAction: Some-Action' \
--data-binary @request.xml \
<endpoint>
curl-H'内容类型:application/soap+xml;字符集=UTF-8'\
-“SOAPAction:一些动作”\
--data binary@request.xml\
你能编写curl
命令吗?@randomir我更新了curl命令也许你应该使用内容类型:application/soap+xml;字符集=UTF-8
。但是你肯定应该定义你的SOAPAction
头,因为现在它是无效的--curl
根本不发送它。谢谢@randomir。当我使用application/xml时,我看到了这个错误:{“timestamp”:1511205140609,“validationMessages”:[]}curl:(18)传输已结束,剩余273352字节为readThank!看起来像-d剥离新行等,而-data二进制按原样发送请求。我在另一个帖子里看到的。请你发布你的答案,我将接受并添加赏金:)再次感谢你的帮助。看来我只能在23小时后才能奖励赏金。我明天做。