SoapUI响应400个错误请求
我需要向web服务发出post请求。web服务具有以下结构:SoapUI响应400个错误请求,soap,soapui,Soap,Soapui,我需要向web服务发出post请求。web服务具有以下结构: <soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:kn="http://..//soapAction"> <soap:Header/> <soap:Body> <kn:InsertOrders> <!--Optional:-->
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:kn="http://..//soapAction">
<soap:Header/>
<soap:Body>
<kn:InsertOrders>
<!--Optional:-->
<kn:XmlOrders>?</kn:XmlOrders>
<kn:stringLength>?</kn:stringLength>
<!--Optional:-->
<kn:LoadListId>?</kn:LoadListId>
</kn:InsertOrders>
</soap:Body>
</soap:Envelope>
有人知道吗?是的,您可以将XML转换为字符串并将其设置为方法调用 最终,当XML转换成字符串时
' is replaced with '
" is replaced with "
& is replaced with &
< is replaced with <
> is replaced with >
我把这个答案贴在这里,因为这就是解决我问题的方法。我将XML字符串包装在其中:
”
实际上,它没有对XML字符串进行编码,也没有对字符进行转义。>,<,&,,“非常感谢您的响应,它似乎是有效的。但是,它返回以下错误消息:
服务器无法读取请求。-->XML文档中存在错误(7,46).-->输入字符串的格式不正确。
。当我使用代码时,它会为您的上述给定、修改的字符串或我的字符串返回此消息:x=x.replaceAll(“,”);x=x.replaceAll(“\”,”;x=x.replaceAll(“,”,“&apos;”)
@JohnBrant,我不确定您的XML是否正确,我在您的示例XML中看到和节点两次。@JohnBrant还有一个想法,您可以使用我添加到答案中的编码XML,看看它是否有效,或者尝试取消在执行replaceAll
后创建的XML的外观,看看它是否有效。红小子,谢谢ot谢谢你的帮助。你的回答确实有道理,但不是我的问题。我发布了一个答案,以防你对解决我问题的方法感兴趣。这是一个非常有用的解决方案。它解决了错误的请求问题。如果你遇到错误的requet 400消息,你会想到请求头,而忽略请求体。但请求体也可能导致此问题这是一个错误的请求问题。
Wed May 16 12:41:19 EEST 2018:DEBUG:Receiving response: HTTP/1.1 400 Bad Request
Wed May 16 12:41:19 EEST 2018:DEBUG:Connection can be kept alive indefinitely
' is replaced with '
" is replaced with "
& is replaced with &
< is replaced with <
> is replaced with >
<?xml version="1.0" encoding="utf-8"?> <EXAMPLE xmlns="EXAMPLE"> <HEADER> <ID>G112233</ID> <TR>AB123</TR> </HEADER> <HEADER> <ID>G123123</ID> <TR>AB1234</TR> </HEADER> <DETAIL> <DETAILID>123123123</DETAILID> <TXT>ATR_123</TXT> </DETAIL> <DETAIL> <DETAILID>123123123</DETAILID> <TXT>ATR_123</TXT> </DETAIL> </EXAMPLE>