我正在尝试使用SudsLibrary在Robotframework中发送SOAP请求。
如果我有一个WSDL文件(本地或远程),它工作正常,但在这种特定情况下,我没有任何类型的WSDL。只是应用程序端点的URL。
注意:我尝试使用SoapUI发送它而不使用WSDL(仅使用URL)并且它工作正常,而在其他语言中我也可以这样做(例如Ruby + Savon)。
现在,任何想法如何才能通过URL和Suds实现这一目标?甚至还有另一个图书馆?
非常感谢。
示例代码(使用"非WSDL" URL而不是真正的WSLD时抛出错误500):
#Example URL: "http://IP:PORT/exampleAction"
${wsdl}= set variable ${CURDIR}/WSDLs/CreateService.WSDL
${wsdl_operation}= set variable X.Asset.UpdateNotification
${msg}= Keyword That Returns Some Kind of XML
Create Soap Client ${wsdl}
${raw_msg}= Create Raw Soap Message ${msg}
${result}= Call Soap Method ${wsdl_operation} ${raw_msg}
答案 0 :(得分:2)
您是否通过添加?WSDL从您拥有的URL获取WSDL? 例如:" http://IP:PORT/exampleAction?WSDL"
您可以使用RequestsLibrary将XML文件发送到服务。