2011-06-10 89 views
0

我在我的IOS应用程序中使用ASIHTTPRequest来调用wsdl/SOAP Web服务。我的客户使用安全模块(使用他的ModSecurity /一个PHP代码)。ASIHTTPRequest和网络服务安全

我用这:

NSData *xmlData = // I construct the soap message witk soapui 

NSURL *url = [NSURL URLWithString:@"https:myUrlWSDL"]; 
self.currentRequest = [ASIFormDataRequest requestWithURL:url]; 
[self.currentRequest appendPostData:xmlData]; 
[self.currentRequest setDelegate:self]; 
[self.currentRequest startAsynchronous]; 

但是服务器发送给我的400张床位的要求。

请问我可以用所有这种安全模式打电话给我的wsdl/web服务吗?调用Web服务所需的http头是什么?谢谢你的回答

我已经禁用了安全模块。现在我有这个错误: WSDLSOAP-ERROR:解析WSDL:无法从'http:// ...?wsdl'加载:无法加载外部实体“http:// ...?wsdl”

+0

可能重复的[ASIHTTPRequest 400坏请求(皂)](http://stackoverflow.com/questions/6301196/asihttprequest-400-bad-request-soap) – JosephH 2011-06-10 09:07:15

回答

0

这就是你如何使用ASI调用安全连接 - 你正在做的一切正确。

问题必须出现在您的代码中,该代码创建xmlData - 您可以从客户端服务器获取哪些其他错误信息?

您可能还需要为请求添加更多标头(尽管这也是客户应该能够告诉您的东西) - 例如,的

[request addRequestHeader:@"Referer" value:@"http://allseeing-i.com/"]; 
+0

我有禁用安全模块。现在我有这个错误:<?xml version =“1.0”encoding =“UTF-8”?> WSDL SOAP-ERROR:解析WSDL:无法从'http:// ...?wsdl'加载:无法加载外部实体“http:// ...?wsdl” – samir 2011-06-10 11:18:59

+0

这告诉我安全性和与SOAP无关。我对SOAP一无所知,所以再也忍不住了,对不起!我会问一个关于堆栈溢出的新问题,并将其标记为回答! – deanWombourne 2011-06-10 11:51:30