ホームページ > 記事 > ウェブフロントエンド > `mode: \'no-cors\'` を使用したフェッチ リクエストで SyntaxError が発生するのはなぜですか?
ReactJS でフェッチ API を使用して REST-API にリクエストを行う場合、次の処理が不可欠です。適切な対応。ただし、このプロセス中に一般的なエラーが発生する可能性があります。そのようなエラーの 1 つは、「SyntaxError: Unexpected end of input.」です。
このエラーは、通常、応答を処理しようとしたとき、特に response.json() が呼び出される行で発生します。このエラーは、サーバーから受信した応答が不完全であるか、予期しない形式であることを示しています。
この問題の核心は、このモードの使用にあります。 : フェッチリクエストの「no-cors」設定。この設定は基本的に、ブラウザーが CORS ヘッダーをリクエストに添付して、応答を不透明にすることを防ぎます。
不透明な応答: 不透明な応答は、フロントエンド JavaScript コードが応答の本文またはヘッダーにアクセスすることを禁止します。この制限により、必要なデータへのアクセスが妨げられるため、応答を処理しようとするときに問題が発生する可能性があります。
SyntaxError を解決し、応答するには、モード「no-cors」設定を削除することが重要です。デフォルトでは、フェッチ API は「同一オリジン」モードを使用します。これにより、ブラウザーは CORS を処理し、応答へのアクセスを提供できます。
それでも問題が発生する場合は、 「no-cors」を削除した後の CORS の問題については、次の代替案を検討してください。解決策:
以上が`mode: \'no-cors\'` を使用したフェッチ リクエストで SyntaxError が発生するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。