Файл url-ответа iOS bool
-
23-12-2019 - |
Вопрос
чистый веб-сервис, который возвращает значение 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.К сожалению, некоторые веб-сервисы не имеют исчерпывающей документации.