2017-10-17 3 views
0

J'ai un système de vote pour les modèles inséré par les utilisateurs. Si le modèle obtient 5 voix, il est inséré dans la base de données. Je veux rediriger vers une page générale "soumissions d'utilisateurs" après insertion réussie. Donc, si l'utilisateur jette le 5ème vote, je redirige vers cette page. J'ai une route nommée que je vous envoie à la demande Ajax comme ceci:Laravel redirige pour se connecter après javascript rediriger vers une autre page

$redirect_url = route('user_suggested_models'); 

$report = ['url' => $redirect_url]; 

return Response()->json($report); 

l'itinéraire est défini comme suit:

Route::get('model/user_suggested_models', [ 

    'as' => 'user_suggested_models', 

    'middleware' => 'auth', 

    'uses' => '[email protected]' 

]); 

et dans le javascript je réoriente comme ceci:

document.location.href = data.url; 

Donc, la redirection se produit mais même si je suis connecté, j'obtiens la page de connexion, si je me connecte alors il continue la redirection. Le problème est que l'utilisateur est déjà connecté. Une idée de pourquoi il veut à nouveau des informations d'identification?

mise à jour:

mise à niveau vers MAMP 4.1 a résolu le problème tout à fait sans avoir besoin de modifier les routes.

Répondre

0

Lorsque vous rechargez la page, elle appelle à nouveau cette URL "model/user_suggested_models". Puisque cette URL est protégée par auth, elle vous redirige vers la page de connexion.

+0

est-il un moyen d'éviter cela? Et pourquoi c'est ainsi? Si je recharge la même page quand il est connecté, il ne demandera pas de connexion puisque je suis déjà connecté – Chriz74

+0

essayez le nom du middleware comme auth: web voir comment ça se passe. –

+0

auth: web fonctionne merci. Y a-t-il une implication? – Chriz74