2010-11-20 42 views
0

我试图从iOS访问SOAP web服务。如果从OS X或iOS发送SOAPAction无法识别

但我只得到这样的响应:

<?xml version="1.0"?> 

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> 
<soap:Body> 
<soap:Fault> 
<faultcode>soap:Client</faultcode> 
<faultstring>Den spesifiserte SOAPAction ble ikke gjenkjent.</faultstring> 
<detail/> 
</soap:Fault> 
</soap:Body> 
</soap:Envelope> 

故障字符串说:指定的SOAPAction无法识别。(译自挪威语)

如果我从Windows窗口发送SOAP请求,我会得到正确的响应。

我也尝试在我的Mac上使用curl发送请求,但得到了与从iOS发送时相同的错误响应。

我用Wireshark检查运行服务器的机器上的SOAP请求。 (这是一个内置于应用程序中的web服务,所以我没有任何控制权。)

从窗口框接受并发送的请求,以及未被接受并从OS X发出的请求具有完全相同的XML和http标题。

什么可能是错的?

+0

您可以发布HTTP标头SOAPAction为工作和非工作请求,它听起来像非工作请求是要么丢失SOAPAction头一起或者具有不同的值。 – superfell 2010-11-20 18:12:13

+0

那是你的问题。SOAPAction和所有其他标题完全相同 – LarsJK 2010-11-21 10:54:56

回答

0

你有没有检查换行符和字符集编码? XML对此非常特别,将XML的字符集设置为UTF-8或其他更通用的字符集,并检查换行符是否兼容,我将换行符看作是C字符串,换行符在Windows上是\ r \ n在Mac中,我相信只有\ n

相关问题