0

私のアプリケーションは 127.0.0.1:8000 でホストされています

jQuery メソッドを呼び出して、一部のコンテンツをコンテナーにロードしました (例として単純化しました)。

$('body').load('127.0.0.1:8000/static/views/testing.html');

このコード行を実行すると、次のエラー メッセージが表示されます。

XMLHttpRequest は %3127.0.0.1:8000/static/views/testing.html を読み込めません。クロス オリジン リクエストは、HTTP でのみサポートされています。

どこかで、jQuery が URL をマングリングし、"%3" を追加しています。コロンを削除すると、%3 が消えます。ソースとターゲットの両方が 127.0.0.1:8000 にあるため、これはクロスオリジンの問題ではありません。

URLでポート指定子を使用してjQuery.load()を使用することに固有の、私が気付いていない問題はありますか?

Ubuntu 12.04 LTS (バージョン 23.0.1271.97 Ubuntu 12.04 (23.0.1271.97-0ubuntu0.12.04.1)) の Chromium でこれを実行しています。

4

2 に答える 2

1

ドメインを指定する必要はありません。次を試してください。

$('body').load('/static/views/testing.html');
于 2013-01-29T04:33:23.093 に答える
1

load() 関数の最初のパラメーターは、IP アドレスではなく、ドメインベースの URL にする必要があると確信しています。したがって、代わりに を使用する$('body').load('http://localhost:8000/static/views/testing.html');と、正常に動作するはずです。

于 2013-01-29T04:42:26.927 に答える