Вопрос

чистый веб-сервис, который возвращает значение true или false, но я не знаю, как перехватить этот ответ в моем приложении для IOS.

Мой сервис обновляет данные в базе данных, и я знаю, что это работает, данные обновляются, проблема заключается в перехвате ответа, мне нравится знать, чтобы я мог сообщить пользователю, если что-то пошло не так.

Для тех из вас, кто знает, что c# - это метод bool, просто попробуйте catch и верните true или false.

-(void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response {
    //What to write here to catch my true or false
    if(response) {
       //true
    } else {
       //false
    }
}

Спасибо вам за вашу помощь

Это было полезно?

Решение

Вы должны внедрять генеракодицетагкод для получения и сохранения NSDATA и connection:didReceiveData:, где вы можете интерпретировать полученные данные как Bool.

В основном – connectionDidFinishLoading: Только познакомьтесь с ответом на сервер на ваш запрос не весь ответ.

Другие советы

Вы должны проверить HTTP-код состояния ответа, например:

NSInteger statusCode = [(NSHTTPURLResponse*)response statusCode];

Код состояния для успешного запроса использует диапазон [200..299].

Например, успешный запрос GET будет обозначен символом 200 (ОК).

Успешный запрос на публикацию будет отмечен символом 201 (Создан).

Об успешном запросе на удаление будет указано с помощью 204 (Без содержания)..

Смотрите также:вики Список кодов состояния HTTP.

Кроме того, вам необходимо проверить, какие данные отправил вам сервер:

NSString* mimeType = [response MIMEType];

Тип mime был отправлен сервером в Content-Type заголовок ответа.

Смотрите также wiki Тип интернет-носителя MIME

То, что вы на самом деле получите, полностью зависит от вашего запроса И сервера.

Например, сервер всегда может ответить с использованием JSON в качестве типа контента.В этом случае заголовок Content-Type из ответ было бы application/json.Фактический JSON, который представляет ответ, также будет связан с кодом состояния.

Чтобы предоставить пользователю приятное для восприятия человеком сообщение, вам необходимо обратиться к API веб-сервиса и выяснить, как оно задано.Некоторые API-интерфейсы веб-служб могут иметь значительный размер API.К сожалению, некоторые веб-сервисы не имеют исчерпывающей документации.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top