Maison > interface Web > js tutoriel > Pourquoi ma demande d'extraction React échoue-t-elle avec « Fin inattendue de l'entrée » en mode No-CORS ?

Pourquoi ma demande d'extraction React échoue-t-elle avec « Fin inattendue de l'entrée » en mode No-CORS ?

Susan Sarandon
Libérer: 2024-12-09 03:49:09
original
459 Les gens l'ont consulté

Why Does My React Fetch Request Fail with

Réponse de gestion : fin inattendue de l'entrée avec le mode « No-Cors »

Lorsque vous essayez de récupérer des données à partir d'une API REST à l'aide de ReactJS, une erreur de fin de saisie inattendue peut survenir lors de l’analyse de la réponse. Cette erreur se produit généralement à la ligne suivante :

return response.json();
Copier après la connexion

Cause première : mode 'No-Cors'

L'erreur provient de l'utilisation du 'no-cors' mode dans la demande de récupération. Lorsque ce mode est activé, la réponse est considérée comme opaque, ce qui signifie que JavaScript frontend ne peut pas accéder au corps de la réponse ou aux en-têtes.

Explication de No-CORS

Le but de définir le mode « no-cors » consiste à empêcher le code JavaScript frontal d'accéder aux réponses qui ne définissent pas explicitement les en-têtes Access-Control-Allow-Origin. Cette mesure est destinée à protéger contre les attaques de scripts intersites (XSS).

Solution : Suppression du mode « No-Cors »

Pour résoudre l'erreur, supprimez le paramètre « no-cors » de la demande. Cela permettra à votre code d'accéder au corps de la réponse et d'analyser avec succès la réponse JSON.

Considérations supplémentaires

Si vous rencontrez cette erreur sans utiliser l'option 'no-cors ', considérez les étapes suivantes :

  • Assurez-vous que le serveur est configuré pour envoyer les en-têtes Access-Control-Allow-Origin dans sa réponse.
  • Si la requête déclenche un contrôle en amont CORS, envisagez d'utiliser un proxy CORS pour gérer le contrôle en amont et relayer la réponse.

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