从 iOS 目标调用方法 webService (WCF) C)
Posted
技术标签:
【中文标题】从 iOS 目标调用方法 webService (WCF) C)【英文标题】:calling method webService (WCF) from iOS objective C) 【发布时间】:2015-07-21 21:11:24 【问题描述】:我想从ios通过参数Json调用方法webService,但是我收到了错误。
代码服务器端 (WCF):
[OperationContract]
[WebGet(ResponseFormat = WebMessageFormat.Json, UriTemplate = "/test/input")]
int test(string 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 测试并返回 OK,但不适用于 iOS。 请帮我! 谢谢:)
【问题讨论】:
您收到什么错误信息? ttp://www.w3.org/TR/html4/strict.dtd" rel="nofollow" target="_blank">w3.org/TR/html4/strict.dtd">错误请求 - 无效 URL
HTTP 错误400. 请求 URL 无效。
我收到此错误。 那么你的网址是什么?将 JSON 放在 GET URL 中是不常见的。通常你会发布它。 此方法适用于 WindowsPhone,我在 windowsPhone 中得到结果,但不适用于 iOS。 :-( 您需要检查生成的 URL 并找出服务器说它无效的原因。 【参考方案1】:错误描述“HTTP 错误 400。请求 URL 无效。”清除您传递的网址不正确。如果他们将 JSON 附加到获取 URL,请与 Windows 团队进行交叉检查。
一般来说,如果你想发布数据,你可以将 requestdata 设置为 JSON,然后使用 PUT 或 POST 请求而不是 GET 请求。
【讨论】:
以上是关于从 iOS 目标调用方法 webService (WCF) C)的主要内容,如果未能解决你的问题,请参考以下文章