大家好,我在处理 wcf json web-services 时遇到了一个奇怪的问题。当从 android 调用相同的 web 服务时,它返回有效的 JSON,但是当我从 iOS 调用时,我得到 null 并且只有 null ,我尽我所能尝试,但我没有弄错..我调用 wcf Web 服务的代码如下。
NSString *urlStringRequest = [NSString stringWithFormat:@"%@%@",urlPath,parameterName]; //its my URL to connect to web server.
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:urlStringRequest]];
[request setHTTPMethod:@"POST"];
[request setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
NSError *error = nil;
NSURLResponse *response = nil;
NSData *result = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error];
NSArray *jsonArrayOne = [self parseJsonResult:result];
NSLog(@"Json Resul: %@", jsonArrayOne);
函数 parseJsonResult 如下
- (id)parseJsonResult:(NSData *)result
{
if( ! result)
return nil;
NSError *error = nil;
jsonArray = [NSJSONSerialization JSONObjectWithData: result options: NSJSONReadingMutableContainers error: &error];
if (!jsonArray) {
NSLog(@"Error parsing JSON: %@", error);
} else {
for(NSDictionary *item in jsonArray) {
NSLog(@"Item: %@", item);
}
}
return jsonArray;
}
网址就像
http://xxx/xxx/xxx.svc/login?parameter={\"username\":\"abc.xyz\",\"password\":\"Password123\"}
并从 android 调用这个 wcf web-service 返回正确的 json 响应,但从 iOS 调用返回 null 。我在哪里弄错了,请帮助我。