2016-06-16 4 views
2

unauthorized pageLaravel несанкционированной страница когда Аякс отправить запрос

Я сделать игру на основе веб. Игра должна сначала войти в систему, поэтому я использую laravel auth :: register и auth :: login как обычно, и добавьте промежуточное auth на все страницы, за исключением регистрации на странице регистрации &. Затем проверьте статус игры, используя smartupdater если готов или нет.

$("section").smartupdater({ 
    url  : urlCheckStatus, 
    data  : data, 
    dataType : 'json', 
    minTimeout: 2000 
}, function(response){ 
    var gameStatus = response.data.status; 

    if(gameStatus === 'start') 
    { 
     gameOn(); 
    } 
    else if(gameStatus === 'active') 
    { 
     pleaseWait(); 
    } 
    else if(gameStatus === 'stop') 
    { 
     backToMenu(); 
    } 
}); 

Регистрация и Войти функция

public function register(Request $request) 
{ 
    $name = $request->input('username'); 

    $user = new User; 
    $user->name  = $request->input('username'); 
    $user->email = $name.'@abc.com'; 
    $user->password = bcrypt(Carbon\Carbon::now()); 
    $user->grade = $request->input('grade'); 
    $user->numb  = $request->input('numb'); 
    $user->save(); 

    Auth::login($user, true); 

    return redirect('menu'); 
} 

проверить статус игры функция

public function checkGameStatus() 
{ 
    $game_id = Request::input('game_id'); 
    $data = Game::find($game_id); 

    return response()->json([ 
     'data' => $data 
    ]); 
} 

Но иногда я был выброшен на страницу входа в систему, потому что ошибка 401 Несанкционированное. Попытка консоли вести журнал, как изображение выше.

Благодаря

+0

Вы не изображены код, как вы входите в систему и регистрируете пользователей? – TheFallen

+1

И вы можете показать нам, что ответ от вас на ajax-вызов. –

+0

@ thefallen эта игра проста, мне просто нужно их имя, чтобы хранить db и легко получить их имя из db. –

ответ

0

Я вижу, что вы используете Javascript для авторизации с Laravel, согласно Laravel документации для проверки подлинности API с помощью Javascript:

Если вы используете другую структуру JavaScript, вы должны сделать уверены он настроен на отправку заголовков X-CSRF-TOKEN и X-Requested-With с каждым исходящим запросом.

Можете ли вы обеспечить, чтобы X-CSRF-TOKEN и X-Requested-With всегда присутствовали в ваших заголовках.