ios - 从服务器获取数据时出错

标签 ios iphone soap

我正在使用 POST 方法向我的服务器发送一些数据。代码如下:

NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:@"<myServer ip>"]];
[request setValue:@"application/xml; charset=utf-8" forHTTPHeaderField:@"Content-Type"];
[request setHTTPMethod:@"POST"];
NSString *stringData = @"Hello";
NSData *requestBodyData = [stringData dataUsingEncoding:NSUTF8StringEncoding];
request.HTTPBody = requestBodyData;
NSURLConnection *conn = [[NSURLConnection alloc] initWithRequest:request delegate:self];
[conn start];

我没有从服务器接收到正确的数据。

接收代码为:

- (void)connectionDidFinishLoading:(NSURLConnection *)connection {

    NSLog(@"didFinishLoading Called");
    NSString* newStr = [[NSString alloc] initWithData:responseData
                                              encoding:NSUTF8StringEncoding];
    NSLog(@"data received is = %@",newStr);
}

我收到的回复是:

<soapenv:Body>
    <soapenv:Fault>
        <faultcode xmlns:ns1="xml.apache.org/axis/">ns1:Client.NoSOAPAction</…;
        <faultstring>no SOAPAction header!</faultstring>
        <detail>

最佳答案

您不能只通过发送任意字符串来测试 SOAP 服务。您所证明的只是 URL 指向期望接收 SOAP 消息的服务器。您需要查看服务器规范并创建要发送的适当 SOAP 负载。这应该替换 stringData 中的当前内容。

关于ios - 从服务器获取数据时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21478728/

相关文章:

rest - SOAP——有什么意义?

iphone - 在 iPhone/iPad 上创建/编辑 .doc .xls 文件

ios - @IBAction 在递归调用时崩溃

iphone - 如何在 iPad/iPhone iOS 设备上显示系统日志?

ios - self Controller nil webview

iphone - 将单击手势添加到 superview 时 UIButton 不起作用

iphone - 从文档目录加载图像

c# - 如何获取 SOAP 元素值

python - 在 python 中调用 SOAP 客户端(suds) 返回错误 AuthenticationError.LOGIN_COOKIE_REQUIRED

ios - UIScrollView 内存警告