Maison  >  Article  >  cadre php  >  Laravel crée des réponses, définit les en-têtes de réponse, les redirections, etc.

Laravel crée des réponses, définit les en-têtes de réponse, les redirections, etc.

齐天大圣
齐天大圣original
2020-12-15 20:24:222608parcourir

Toutes les routes et tous les contrôleurs renverront une réponse envoyée au navigateur de l'utilisateur après avoir traité la logique métier. Laravel propose diverses façons de renvoyer des réponses. Le plus simple est de renvoyer une chaîne dans la route ou le contrôleur, et la couche inférieure de Laravel créera automatiquement une réponse http complète à renvoyer.

Route::get('index', function () {
    return 'study laravel'
});

Si un tableau est renvoyé, laravel le convertira automatiquement au format json pour la sortie. De plus, le code suivant est équivalent :

return ['name' => 'laravel', 'email' => 'laravel@qq.com'];
return response(['name' => 'laravel', 'email' => 'laravel@qq.com']);
return response()->json(['name' => 'laravel', 'email' => 'laravel@qq.com']);

Ajouter un en-tête de réponse <.>

L'ajout d'en-têtes de réponse est très simple. Il vous suffit d'utiliser la méthode d'en-tête. Vous pouvez utiliser plusieurs méthodes d'en-tête pour définir plusieurs en-têtes de réponse.

return response(&#39;study laravel&#39;)
        ->header(&#39;Content-Type&#39;, &#39;text/html; charset=UTF-8&#39;)
        ->header(&#39;Php-Version&#39;, &#39;7.4&#39;);

Vous pouvez également utiliser withHeaders pour définir plusieurs en-têtes de réponse à la fois. Cette méthode accepte un tableau comme premier paramètre.

return response(&#39;study laravel&#39;)
         ->withHeaders([
             &#39;Conetnt-Type&#39; => &#39;text/html; charset=UTF-8&#39;,
             &#39;Php-Version&#39; => &#39;7.4&#39;
         ]);

Redirection

Dans Laravel, il existe plusieurs façons d'implémenter la redirection. Peut être redirigé via Route::redirect ou la redirection de fonction. Parce que Route::redirect appartient aux connaissances liées au routage, nous examinons ici la fonction de redirection.

return redirect(&#39;index/users&#39;);

Souvent, lorsqu'un formulaire est soumis et que la vérification échoue, nous revenons à la page précédente du formulaire. Ici, nous devons utiliser la fonction retour pour terminer.

return back();

peut également être redirigé vers une route nommée. S'il y a des paramètres dans la route, passez-le via le deuxième paramètre :

return redirect()->route(&#39;news&#39;, [&#39;id&#39; => 23]);

Souvent, nous le redirigerons après avoir effectué un traitement logique. Dirigé vers un autre contrôleur pour continuer l’étape suivante. Par exemple, lors de l’enregistrement de quelque chose, il faut remplir plusieurs formulaires.

return redirect()->action(&#39;IndexController@index&#39;, [&#39;id&#39; => 1]);

Parfois, vous devez rediriger vers un nom de domaine extérieur à l'application, vous pouvez également utiliser away pour terminer l'opération. C'est sans aucun encodage

return redirect()->away(&#39;http://google.com&#39;);

D'autres types de réponses

Les réponses d'affichage sont très courantes et peuvent être définies à l'aide de la méthode d'affichage

return response()
    ->view(&#39;welcome&#39;, $data, 200)
    ->header("Content-Type", "text/html;charset=utf-8");

De plus, laravel fournit également des réponses de téléchargement, des réponses de fichiers, etc. Comme ils ne sont pas beaucoup utilisés dans le travail quotidien, ils ne seront pas présentés ici. Les étudiants intéressés peuvent vérifier eux-mêmes les documents pertinents.

Tutoriel recommandé : "

framework laravel"

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn