Проблема: У меня есть пользовательские записи, каждая из которых имеет уникальный идентификатор emp (целое число 5), я использую свой empid для входа в систему, но сталкиваюсь с ошибкой 302. Теперь выполняем это, пока данные формы публикуются с данными:
[ Замечания: используя Laravel Framework версии 4.2.9]Ид = 938, пароль = пароль
$userdata = ['eid' => Input::get('eid'),'password' => Input::get('password')];
if (Auth::attempt($userdata)) {
print_r($userdata);
die();
} else {
// validation not successful, send back to form
return Redirect::to('login');
}
Я получаю данные, напечатанные в виде массива, что означает, что моя аутентификация прошла успешно, но когда я делаю перенаправление, я получаю ошибку 302.
$userdata = ['eid' => Input::get('eid'),'password' => Input::get('password')];
if (Auth::attempt($userdata)) {
return Redirect::to('demome');
} else {
// validation not successful, send back to form
return Redirect::to('login');
}
Мои маршруты:
Route::post('login', array('uses' => 'HomeController@doLogin'));
Route::group(array('before' => 'auth'), function(){
Route::get('demome',function(){
echo "Asdasd";
die();
});
})
Странное поведение
когда идентификатор сотрудника ниже 100, он отлично работает, когда его ошибка превышает 100, 302
Я думаю, что здесь нет проблем. 302 — это HTTP-статус для временного перенаправления, поэтому прекрасно, когда вы получаете 302-статус для вашего базового URL-адреса при использовании перенаправления. Вы должны получить 302 статуса для URL после публикации данных и 200 статусов для URL после перенаправления.
Решено:
пришлось использовать это в моей модели пользователя
public function getAuthIdentifier(){
return $this->getKey();
}