iOS访问Webservice(Java服务器)和(.net服务器)

来源:互联网 发布:公安局网络监察科报案 编辑:程序博客网 时间:2024/05/16 05:00

1.iOS访问java的webService时出现特别多的问题

//构造一个Json类型。 这个类型很重要。一开始的时候不能带参数。安卓的可以,后来用的是截取发送的数据包进行解析,

  NSString *soapMessage = [NSStringstringWithFormat:

                             @"<?xml version=\"1.0\" encoding=\"utf-8\"?>\n"

                            "<soap:Envelope xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" xmlns:soap=\"http://schemas.xmlsoap.org/soap/envelope/\">"

                            "<soap:Body>\n"

                            "<ns1:%@ xmlns:ns1=\"http://abc.webService.bs.xx/\">"    //借口

                            "<jsonStr>%@</jsonStr>"     //属性参数

                            "</ns1:%@>"

                            "</soap:Body>\n"

                            "</soap:Envelope>",method,jsonString,method];


    //请求发送到的路径

    NSString *msgLength = [NSStringstringWithFormat:@"%lu", (unsignedlong)[soapMessage length]];

    NSURL *url = [NSURLURLWithString:BaiduWebserviceURL];   //定义一个命名空间 BaiduWebserviceURL 宏定义

    NSMutableURLRequest *urlRequest = [NSMutableURLRequestrequestWithURL:url];

    

    //以下对请求信息添加属性前四句是必有的,

    [urlRequest addValue:@"text/xml; charset=utf-8" forHTTPHeaderField:@"Content-Type"];

    [urlRequest addValue:BaiduNamespaceURL forHTTPHeaderField:@"SOAPAction"];

    [urlRequest addValue: msgLengthforHTTPHeaderField:@"Content-Length"];

    [urlRequest setHTTPMethod:@"POST"];

    [urlRequest setHTTPBody: [soapMessagedataUsingEncoding:NSUTF8StringEncoding]];

    

    //异步请求

    NSURLConnection *theConnection = [[NSURLConnectionalloc] initWithRequest:urlRequestdelegate:self] ;

    if (theConnection) {

        

        self.receivedData=[NSMutableDatadata];

        

    } else {

        

    }


2.iOS访问.net的webService时

这个可以根据code4app.com 上有一个手机号码的例子可以。就是asp的工程。

0 0
原创粉丝点击