Hii все, с чем я столкнулся с странной проблемой при работе с веб-службами wcf json. Тот же веб-сервис, когда вызывается из android, возвращает действительный JSON, но когда я вызов из iOS я получаю null и только null, я пробовал полностью, но могу не ошибиться.Неверный ответ Json при вызове веб-службы WCF
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;
}
URL-адрес, как
http://xxx/xxx/xxx.svc/login?parameter={\"username\":\"abc.xyz\",\"password\":\"Password123\"}
и называя это ФОС веб-сервисом от андроида возвращает правильный ответ JSON, но звонит из прошивки возвращая нуль. где я ошибся, пожалуйста, помогите мне.
Требуется ли для вашего сервера в заголовке 'User-Agent' заголовок? Также распечатайте 'error' после завершения запроса, чтобы проверить, доступна ли какая-либо информация об ошибке. – Amar
Попробуйте зарегистрировать результат NSData * – HAS
NSLog ошибка в случае, если возвращаемый результат равен нулю. Это может дать нам подсказку. Не используйте синхронные удобные методы, используйте NSURLConnection в асинхронном режиме, которые реализуют методы делегата. – CouchDeveloper