Maison > développement back-end > tutoriel php > Comment activer CORS dans Laravel 5.1 à l'aide d'un middleware ?

Comment activer CORS dans Laravel 5.1 à l'aide d'un middleware ?

Mary-Kate Olsen
Libérer: 2024-12-07 08:55:13
original
881 Les gens l'ont consulté

How to Enable CORS in Laravel 5.1 Using Middleware?

Activation de CORS dans Laravel 5.1

Pour activer le partage de ressources d'origine croisée (CORS) dans Laravel 5.1, vous pouvez utiliser un middleware. Voici un guide complet pour implémenter CORS à l'aide d'un middleware personnalisé :

  1. Créer un middleware CORS :

Créer un fichier CORS.php dans l'application Répertoire /Http/Middleware. Ajoutez le code suivant à ce fichier :

<?php

namespace App\Http\Middleware;

use Closure;

class CORS
{
    /**
     * Handle an incoming request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Closure  $next
     * @return mixed
     */
    public function handle($request, Closure $next)
    {
        header("Access-Control-Allow-Origin: *");

        // ALLOW OPTIONS METHOD
        $headers = [
            'Access-Control-Allow-Methods' => 'POST, GET, OPTIONS, PUT, DELETE',
            'Access-Control-Allow-Headers' => 'Content-Type, X-Auth-Token, Origin'
        ];
        if ($request->getMethod() == "OPTIONS") {
            // The client-side application can set only headers allowed in Access-Control-Allow-Headers
            return Response::make('OK', 200, $headers);
        }

        $response = $next($request);
        foreach ($headers as $key => $value)
            $response->header($key, $value);
        return $response;
    }
}
Copier après la connexion
  1. Enregistrez le Middleware :

Dans votre fichier app/Http/Kernel.php, ajoutez le code suivant au tableau $routeMiddleware :

'cors' => \App\Http\Middleware\CORS::class,
Copier après la connexion
  1. Utilisez le Middleware :

Vous pouvez désormais utiliser le middleware cors dans vos itinéraires. Par exemple :

Route::get('example', ['middleware' => 'cors', 'uses' => 'ExampleController@dummy']);
Copier après la connexion

En ajoutant ces modifications, vous activerez CORS pour les itinéraires spécifiés et autoriserez les requêtes d'origine croisée à partir de n'importe quel domaine.

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal