ajaxでデータを投稿しようとすると、コンソールでこのエラーが発生します。このデータはこのURLで確認されているはずです。それから、より多くのデータを含むレスポンスを取得する必要があります。Django jquery ajax corsエラー
Cross-Origin Request Blocked: The Same Origin Policy disallows
reading the remote resource at https://secure.paygate.co.za/payweb3/process.trans.
(Reason: CORS header 'Access-Control-Allow-Origin' missing).
私はヘッダを追加するためにミドルウェアとしてdjango-cors-headersを使用しています。私はすべての設定指示に従った。
私のsettings.py:
INSTALLED_APPS = [
# ...
'corsheaders',
# ...
]
MIDDLEWARE = [
# ...
'corsheaders.middleware.CorsMiddleware',
# ...
]
CORS_ORIGIN_ALLOW_ALL = True
CORS_ALLOW_METHODS = (
'GET',
'POST',
'OPTIONS',
)
AJAX呼び出し:
$.ajax({
type: "POST",
url: url,
dataType: "json",
data: data,
success: function(data){
alert('success');
},
error: function(data){
alert('error');
}
});
データとurlは、この上に宣言され、その部分は結構です。 提出するたびにエラー警告が表示されます。
マイパッケージ:
Django==1.11.3
django-cors-headers==2.1.0
pytz==2017.2
私は、Windows 10
EDIT日午前:私は、AjaxのためcsrfSafeMethodを追加しました。これと関係があるかどうかは分かりません。このコードは
EDIT2 docs.djangoproject.com/en/1.11/ref/csrfここdjangoprojectによって提供されています。私はurllibはを使用してジャンゴとのクロスドメインのものをした内部それではAJAX呼び出しを送ることになりました。 Thisは、クロスドメインのデータを投稿するのに多くの手助けをしました。ドキュメントを1として
'CorsMiddleware'が正しい順序で追加されましたか? – Grimmy
[this](https://stackoverflow.com/questions/6506897/csrf-token-missing-or-incorrect-while-post-parameter-via-ajax-in-django)が役立つでしょう。 – hansTheFranz
@hanzTheFranzナーthats問題ではない、 – bernosbernus