Wie aktiviere ich CORS für Slim PHP Framework mithilfe von PHP-Headern?

Susan Sarandon
Freigeben: 2024-11-01 04:40:02
Original
859 Leute haben es durchsucht

How to Enable CORS for Slim PHP Framework Using PHP Headers?

Aktivieren von CORS für Slim PHP Framework in .htaccess

Um Cross-Origin Resource Sharing (CORS) für einen RESTful-Dienst zu aktivieren, der mit erstellt wurde Da es sich um ein schlankes PHP-Framework handelt, werden häufig Änderungen an der .htaccess-Datei verwendet. Wenn jedoch nach der empfohlenen Änderung in .htaccess weiterhin Probleme auftreten, kann ein alternativer Ansatz verwendet werden.

PHP-Header verwenden

Anstatt CORS-Header in .htaccess festzulegen Dies kann direkt im PHP-Code erfolgen, insbesondere in der Datei index.php. Durch Hinzufügen des folgenden Codes am Anfang der Datei werden CORS-Header für jede von der Anwendung empfangene HTTP-Anfrage festgelegt:

<code class="php">// Allow from any origin
if (isset($_SERVER['HTTP_ORIGIN'])) {
    // should do a check here to match $_SERVER['HTTP_ORIGIN'] to a
    // whitelist of safe domains
    header("Access-Control-Allow-Origin: {$_SERVER['HTTP_ORIGIN']}");
    header('Access-Control-Allow-Credentials: true');
    header('Access-Control-Max-Age: 86400');    // cache for 1 day
}
// Access-Control headers are received during OPTIONS requests
if ($_SERVER['REQUEST_METHOD'] == 'OPTIONS') {

    if (isset($_SERVER['HTTP_ACCESS_CONTROL_REQUEST_METHOD']))
        header("Access-Control-Allow-Methods: GET, POST, PUT, DELETE, OPTIONS");         

    if (isset($_SERVER['HTTP_ACCESS_CONTROL_REQUEST_HEADERS']))
        header("Access-Control-Allow-Headers: {$_SERVER['HTTP_ACCESS_CONTROL_REQUEST_HEADERS']}");

}</code>
Nach dem Login kopieren

Behandlung von OPTIONS-Anfragen

Wenn Sie das SLIM-PHP-Framework verwenden, müssen Sie möglicherweise auch OPTIONS-Anfragen verarbeiten. Fügen Sie dem $app-Objekt die folgende Route hinzu, um sicherzustellen, dass OPTIONS-Anfragen eine HTTP 200-Antwort erhalten:

<code class="php">// return HTTP 200 for HTTP OPTIONS requests
$app->map('/:x+', function($x) {
    http_response_code(200);
})->via('OPTIONS');</code>
Nach dem Login kopieren

Diese PHP-Änderungen bieten eine Alternative zum Festlegen von CORS-Headern in .htaccess. Durch Hinzufügen beider Codeblöcke zur Datei index.php können Sie CORS für Ihren SLIM PHP RESTful-Dienst aktivieren.

Das obige ist der detaillierte Inhalt vonWie aktiviere ich CORS für Slim PHP Framework mithilfe von PHP-Headern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage