Der Inhalt dieses Artikels befasst sich mit der Methode zur Steuerung domänenübergreifender Domänennamen und dem Ermöglichen des domänenübergreifenden Hochladens von Bildern über das PHP-Backend. Ich hoffe, dass dies der Fall ist hilfreich sein.
Oft müssen domänenübergreifende Probleme bewältigt werden, und das Front-End muss direkter erfolgen
Wählen Sie entweder die asynchrone Ajax-Übermittlung, XML oder JSONP oder die Formularübermittlung
jsonp kann im Grunde alles verarbeiten. Es gibt einige domänenübergreifende Probleme, aber das Problem ist auch relativ offensichtlich. Es kann nur über die get-Methode
übermittelt werden, und jsonp sendet die Anfrage, indem es Parameter in die URL einfügt 🎜>
Allerdings haben alle Browser URL-Längenbeschränkungen, verschiedene Browser haben unterschiedliche LängenbeschränkungenWenn Sie einen großen Absatz mit Inhalten einreichen müssen, z. B. einen Artikel, wenn Sie JSONP und die Länge verwenden Wenn die Länge überschritten wird, können Sie nur teilen und senden Es ist sehr problematisch und am Ende ist es nicht korrekt. Die Sicherheit hat einige AuswirkungenUnd Axiox unterstützt JSONP derzeit nicht. Obwohl es welche gibt LösungsmöglichkeitenInsbesondere beim Hochladen von Bildressourcen kann es mit Methoden wie jsonp nicht gut implementiert werdenSzenarien, die das Hochladen von domänenübergreifenden Bildern erfordern
Natürlich ist es am besten, nicht domänenübergreifend zu arbeiten, aber bei den meisten Projekten sind derzeit Front-End und Back-End getrennt.Statische Ressourcen und Schnittstellen sind unterschiedliche Domänennamen bzw. Domänennamen der zweiten Ebene beinhaltet domänenübergreifendes HochladenWenn es sich um einen Ressourcen-Upload handelt, sind beim domänenübergreifenden Ausführen das Backend Access-Control-Allow-Origin und die aktuelle Anforderung erforderlich. Das Gleiche wie bei Origin kann nicht auf * gesetzt werden
php-Lösung
Wenn es sich um eine herkömmliche Datenanfrage handelt, dann setzt das Backend Access-Control-Allow-Origin direkt auf * Gutheader('Access-Control-Allow-Origin:*');
$originList = [ 'http://127.0.0.1', 'http://www.php.cn', 'http://www.php.cn', ]; if(in_array($_SERVER['HTTP_ORIGIN'], $originList)){ header('Access-Control-Allow-Origin:'.$origin); header("Access-Control-Allow-Credentials: true"); header('Access-Control-Allow-Headers:x-requested-with,content-type'); header("Access-Control-Allow-Methods: POST,GET,OPTIONS"); }
Das obige ist der detaillierte Inhalt vonEine Einführung in die Methode zur Steuerung domänenübergreifender Domänennamen und zur Ermöglichung domänenübergreifender Bild-Uploads im PHP-Backend. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!