从 iOS objective C 调用方法 webService (WCF))

calling method webService (WCF) from iOS objective C)

我想通过参数 Json 从 IOS 调用方法 webService,但我收到一个错误。

代码服务器端 (WCF):

[OperationContract]
    [WebGet(ResponseFormat = WebMessageFormat.Json, UriTemplate = "/test/{input}")]
    int test(string input);

我要get input(参数方法和url)=typeof(Json)

客户端代码 (iOS-objective C) :

NSString *json = [self convertToJson:myObject];
NSString *urlComplete = [NSString stringWithFormat:@"%@%@",@"http://test.com/Service.svc/test/",json];

    urlComplete = [urlComplete stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];

    NSMutableURLRequest *request = [[NSMutableURLRequest alloc]init];

    [request setURL:[NSURL URLWithString:urlComplete]];
    [NSURLConnection sendAsynchronousRequest:request queue:[NSOperationQueue mainQueue] completionHandler:
             ^(NSURLResponse *response, NSData *data, NSError *connectionError) {
                 if (data.length > 0 && connectionError == nil) {
                     NSString *string = [[NSString alloc]initWithData:data encoding:NSASCIIStringEncoding];
                     NSLog(@"Data Recived:\n %@",string);
                 }
                 else{
                     NSLog(@"Error %@",[connectionError description]);
                 }
             }];

webService 正在通过 windowsPhone 进行测试,returns 正常,但不适用于 iOS。 请帮我! 谢谢:)

错误描述"HTTP Error 400. The request URL is invalid."明确url您传递的是不正确的。如果他们将 JSON 附加到 get URL,请与 windows 团队进行交叉核对。

一般来说,如果您想要 post 数据,您可以设置请求数据 JSON 并使用 PUT 或 POST 请求而不是 GET 请求。