„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Warum sind Axios POST-Daten in $_POST nicht zugänglich?

Warum sind Axios POST-Daten in $_POST nicht zugänglich?

Veröffentlicht am 08.11.2024
Durchsuche:750

Why is Axios POST Data not Accessible in $_POST?

Axios-Post-Parameter werden von $_POST nicht gelesen

Sie veröffentlichen Daten mit Axios an einen PHP-Endpunkt und erwarten, in $ darauf zuzugreifen _POST oder $_REQUEST. Allerdings können Sie es derzeit nicht erkennen.

Ursprünglich haben Sie die Standardmethode axios.post verwendet, sind aber aufgrund eines vermuteten Header-Problems zum bereitgestellten Code-Snippet gewechselt. Trotz dieser Änderung bleiben die Daten nicht erkennbar.

Bei weiteren Untersuchungen haben Sie festgestellt, dass Axios die Daten als JSON-Objekt veröffentlicht, auf das über file_get_contents("php://input") zugegriffen werden kann. Ihr Ziel ist es, die Daten stattdessen als normale Zeichenfolge zu senden.

Lösung:

Laut Axios-Dokumentation besteht das Standardverhalten darin, JavaScript-Objekte zum Posten in JSON zu serialisieren . Allerdings unterstützt PHP JSON nicht als Datenformat zum Auffüllen von $_POST. Es werden nur die von HTML-Formularen nativ unterstützten Formate unterstützt:

  • application/x-www-form-urlencoded
  • multipart/form-data

To Um Daten im gewünschten Format zu senden, haben Sie mehrere Möglichkeiten:

  • Mit der URLSearchParams-API (in a Browser)
  • Verwenden der qs-Bibliothek zum Codieren von Daten

Alternativ können Sie Ihre PHP-Konfiguration anpassen, um JSON-Daten zu verarbeiten, wie in einer anderen verwandten Frage vorgeschlagen.

Freigabeerklärung Dieser Artikel wird unter folgender Adresse abgedruckt: 1729607537 Bei Verstößen wenden Sie sich bitte an [email protected], um ihn zu löschen
Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3