[解決済み】Ajaxクロスオリジンリクエストがブロックされました。同一生成元ポリシーがリモートリソースの読み取りを不許可にする
2022-02-19 23:14:13
質問
慣用句を入力すると、その意味と用例をOxford Dictionaryから返す簡単なサイトを作っています。以下は私のアイデアです。
以下のURLにリクエストを送ります。
http://www.oxfordlearnersdictionaries.com/search/english/direct/?q=[idiom]
例えば、「遠くへ行かない」という熟語なら、リクエストを送ります。
http://www.oxfordlearnersdictionaries.com/search/english/direct/?q=not+go+far
そして、次のページにリダイレクトされます。
http://www.oxfordlearnersdictionaries.com/definition/english/far_1#far_1__192
このページでは、その慣用句の意味と用例を抽出することができる。
以下はテスト用のコードです。これは応答URLを警告します。
<input id="idiom" type="text" name="" value="" placeholder="Enter your idiom here">
<br>
<button id="submit" type="">Submit</button>
<script type="text/javascript">
$(document).ready(function(){
$("#submit").bind('click',function(){
var idiom=$("#idiom").val();
$.ajax({
type: "GET",
url: 'http://www.oxfordlearnersdictionaries.com/search/english/direct/',
data:{q:idiom},
async:true,
crossDomain:true,
success: function(data, status, xhr) {
alert(xhr.getResponseHeader('Location'));
}
});
});
});
</script>
問題は、エラーが出たことです。
クロスオリジンリクエストがブロックされました。同一生成元ポリシーにより、以下のリモートリソースの読み取りが許可されていません。 http://www.oxfordlearnersdictionaries.com/search/english/direct/?q=by+far . これは、リソースを同じドメインに移動するか、CORSを有効にすることで解決できます。
誰かこれを解決する方法を教えてください。
別のアプローチでも結構です。
解決方法は?
あなたのウェブサイトもoxfordlearnersdictionaries.comドメインにありますか?または、ドメインへの呼び出しを行おうとすると、同じ起源ポリシーがブロックされているのでしょうか?
oxfordlearnersdictionaries.comドメインのCORS経由でヘッダーを設定する許可を持っていない限り、別のアプローチを探した方がよいでしょう。
関連
-
[解決済み】SecurityError: オリジンを持つフレームがクロスオリジンフレームにアクセスするのをブロックした
-
[解決済み] jQuery ValidateプラグインでaddMethodを使用する
-
[解決済み] How to make the first option of <select> selected with jQuery
-
[解決済み] 2つの画像を切り替えるにはどうすればよいですか
-
[解決済み] BootstrapがUncaught Errorを投げる:BootstrapのJavaScriptはjQueryを必要とする【終了】。
-
[解決済み] .animateをループさせる方法 JQuery
-
[解決済み] jquery .text()または.html()が動作しない
-
[解決済み] jQueryの再帰性が高すぎる
-
[解決済み] 私のJavaScriptコードは "No 'Access-Control-Allow-Origin' header is present on requested resource "というエラーを受け取りますが、Postmanはそうならないのはなぜですか?
-
[解決済み] Chromeの同一生成元ポリシーを無効にする
最新
-
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でクリックされた要素のIDを取得する方法
-
[解決済み] Foundation Revealモーダルjavascriptを開く方法
-
[解決済み] Bootstrap のカルーセルがスライドしない
-
[解決済み] jQueryでリンクを無効化する
-
[解決済み] JQueryの使用 - フォームが送信されないようにする
-
[解決済み] jQueryでページスクロールをプログラム的に無効にする方法
-
[解決済み] Bootstrapのcollapseが機能しない。ハンバーガーメニューが表示されない。
-
[解決済み] jQueryのinit関数を設定する
-
[解決済み] Uncaught TypeError: 未定義のプロパティ 'ajax' を読み取ることができません。
-
[解決済み] jQuery AJAX クロスドメイン