我的iphone应用正在使用soap web-services。我想知道如果web服务返回一个soap错误它会如何表现?
我使用charles(HTTP代理)来捕获响应并修改响应,然后再将其发送到我的iPhone应用程序。我尝试做的是修改成功的soap响应,并将其转换为soap fault,以查看我的应用程序的行为。
问题: SOAP错误响应如何? (使用restful我只需将responseCode更改为504,如何使用SOAP实现此目的?)
答案 0 :(得分:1)
SOAP错误响应如何?
以下是SOAP响应失败的示例:
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
<s:Header />
<s:Body>
<s:Fault>
<faultcode>s:Client</faultcode>
<faultstring xml:lang="en-US">The creator of this fault did not specify a Reason.</faultstring>
<detail>
<MyFault xmlns="http://schemas.datacontract.org/2004/07/ToDD" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
<MyProperty>some value</MyProperty>
</MyFault>
</detail>
</s:Fault>
</s:Body>
</s:Envelope>
正如您所看到的,SOAP响应主体中有一个特殊的<Fault>
节点,它可以包含描述SOAP错误的任何XML。自定义XML应位于<detail>
子节点中。