У меня есть запрос Ajax в моем угловом коде для подписи пользователей в через мой API:Набор успеха и ошибки ответов
$http.post(LOGIN, {
username: username,
password: password
}).success(function(response){
console.log('response:')
console.log(response);
console.log('_________')
}).error(function(response){
console.log('response:')
console.log(response);
console.log('_________')
})}
Он отлично работает, кроме того response
переменных. Если инициируется успех, локальная переменная response
устанавливается в пустую строку (не неопределенную), и если сбой инициируется, переменная response
устанавливается в пустую строку.
Вот что я получаю в моей консоли:
POST http://0.0.0.0:3000/sessions 401 (Unauthorized)
response:
_________
И если я возвращаю 200 Статус:
response:
_________
Вот мой серверный рельсы код:
def login
status = :unauthorized
status = :ok if User.find_by(username: session_params[:username]).try(:authenticate, session_params[:password])
head status
end
В книгу, которую я читаю, мы фактически показываем ответ об ошибке пользователю. Как мне изменить код сервера, чтобы response
был заполнен фактическим сообщением? Или мне следует каким-то образом изменить код моего клиента?