[解決済み] Fetch APIのCORSの問題を解決する方法
2022-03-08 21:15:24
質問
reactjsを使って、フロントエンドだけの基本的な天気予報アプリを作っています。APIリクエストには、Fetch APIを使用しています。 私のアプリでは、現在地を 簡易API 私が見つけた で、それはJSONオブジェクトとして位置情報を提供します。しかし、Fetch APIでリクエストすると、このエラーが発生します。
Failed to load http://ip-api.com/json: Request header field Access-Control-Allow-Origin is not allowed by Access-Control-Allow-Headers in preflight response.
そこで、これを解決するために検索してみたところ、複数の解決策が見つかりました。
- ChromeでCORSを有効にするとエラーは解決しますが、アプリをherokuにデプロイしたときに、同じCORS問題に遭遇せずにモバイルデバイスからアクセスするにはどうしたらよいでしょうか。
- を発見しました。 プロキシAPI で、CORS リクエストを有効にします。しかし、これは位置情報のリクエストであるため、プロキシサーバーの位置がわかってしまいます。そのため、解決策にはなりません。
- 私は、この Stackoverflowの質問 を追加し、httpリクエストのヘッダーに追加しましたが、問題は解決していません。(まだ同じエラーが出ます)。
では、どうすればこの問題を永久に解決できるのでしょうか?Fetch API の http リクエストの CORS 問題を解決するために使用できる最良のソリューションは何ですか?
どのように解決するのですか?
そのAPIは寛容なようで、次のように応答します。
Access-Control-Allow-Origin:*
何が原因なのかはまだわかっていませんが、単純に フェッチAPI .
これは、FirefoxとChromeの両方でうまくいきました...
fetch('http://ip-api.com/json')
.then( response => response.json() )
.then( data => console.log(data) )
関連
-
[解決済み】React.jsの配列の子要素のユニークキーを理解する
-
[解決済み】Vueのテンプレートまたはレンダー関数が定義されていない 私はどちらも使っていないのですが?
-
[解決済み】Uncaught ReferenceError。Firebase は定義されていません。
-
[解決済み] 配列から特定の項目を削除するにはどうすればよいですか?
-
[解決済み] jQueryで要素が非表示になっているかどうかを確認するには?
-
[解決済み] JavaScriptで文字列が部分文字列を含むかどうかを確認する方法は?
-
[解決済み] 私のJavaScriptコードは "No 'Access-Control-Allow-Origin' header is present on requested resource "というエラーを受け取りますが、Postmanはそうならないのはなぜですか?
-
[解決済み] REST APIからデータを取得しようとしたときに、要求されたリソースに'Access-Control-Allow-Origin'ヘッダーが存在しない。
-
[解決済み] プリフライト要求に対する応答がアクセス制御チェックを通過しない
-
[解決済み】別のウェブページにリダイレクトするにはどうすればいいですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] jQueryで、ユーザーがそのフィールドを編集している間、テキストフィールドの最初の文字を大文字にするにはどうすればよいですか?
-
[解決済み] Uncaught TypeError: 未定義のプロパティ 'top' を読み込めない
-
[解決済み】NodeJS "ESモジュールをロードするためにインポートを使用する必要があります。"
-
[解決済み】未定義のプロパティ 'bind' を読み込めない。React.js【重複あり
-
[解決済み】JavaScript ランタイムエラー:'$'が未定義です。
-
[解決済み】getElementByIdはnullを返す?[クローズド]
-
[解決済み] ローカルファイルを開くことができません - Chrome: ローカルリソースのロードが許可されていません
-
[解決済み】Javascript、[オブジェクトHTMLInputElement]を表示中。]
-
[解決済み] jQuery、簡単なポーリング例
-
[解決済み】リクエストヘッダーフィールドのAccess-Control-Allow-Headersが許可されない。