Ошибка доступа к данным Alamofire API (дайджест-аутентификация доступа)IOS

Программируем под IOS
Ответить Пред. темаСлед. тема
Anonymous
 Ошибка доступа к данным Alamofire API (дайджест-аутентификация доступа)

Сообщение Anonymous »

Я попробовал Alamofire связаться с API моего сервера, чтобы получить данные JSON.
Мой API использует аутентификацию дайджест-доступа, но изначально у меня были проблемы с решением проблем сервера, и мне удалось их преодолеть с помощью приведенного ниже кода. >

Код: Выделить всё

let userNameValue = "username"
let passwordValue = "password"
let credential = URLCredential(user: userNameValue, password: passwordValue, persistence: .forSession)
let sessionMananager = Alamofire.SessionManager.default
let request = sessionMananager.request("http://httpbin.org/basic-auth/\(userNameValue)/\(passwordValue)")
.authenticate(usingCredential: credential)
.responseJSON { response in
print("Response: \(String(describing: response.response))") // http url response
print("Result: \(response.result)")                         // response serialization result
}
Вывод выглядел так:

Код: Выделить всё

Response:
{ Status Code: 500, Headers {
Connection =     (
close
);
"Content-Length" =     (
0
);
"Content-Type" =     (
"text/html; charset=UTF-8"
);
} }
Result: FAILURE
После некоторого поиска я изменил .response JSON на .response String, и результат изменился, как показано ниже:

Код: Выделить всё

Response:
{ Status Code: 500, Headers {
Connection =     (
close
);
"Content-Length" =     (
0
);
"Content-Type" =     (
"text/html; charset=UTF-8"
);
} }
Result: SUCCESS
Чтобы убедиться, что задача решена, я ввел неправильный пароль и попробовал использовать .responseString, результат получил код состояния: 401.
Необходимы предложения
Чтобы получить данные из API
Даже если код состояния: 500 является внутренняя ошибка, я не думаю, что это проблема сервер.

Подробнее здесь: https://stackoverflow.com/questions/506 ... cess-error
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «IOS»