この記事は主に、Ajax クロスドメイン アクセス エラー 501 の解決策を詳しく紹介します。興味のある友人が参考になれば幸いです。
問題: Ajax クロスドメイン アクセス エラー 501
次のコードを実行するとエラー 501 が報告されます
$.ajax({ type: "POST", url: "http://192.168.1.202/sensordata.php", contentType:'application/json; charset=utf-8', data: JSON.stringify(ajaxPostData), dataType:'json', success: function(data){ //On ajax success do this console.info("success."); if (data["status"] == "ok"){ alert("Settings is Ok. The Machine is rebooting."); } }, error: function(xhr, ajaxOptions, thrownError) { //On error do this console.info("error."); if (xhr.status == 200) { alert(ajaxOptions); } else { alert(xhr.status); alert(thrownError); } } });
解決策:
contentType:'application/json; charset=utf-8' を削除します
原因:
1クロスドメイン アクセス contentType が application/x-www-form-urlencoded、multipart/form-data、または text/plain である場合を除き、ドメインが指定されている場合、ブラウザーは最初に OPTIONS メソッドを使用してリクエストを送信するようにトリガーされます。
2 たとえば、元のリクエストが POST メソッドである場合、最初のリクエストによって返された結果ヘッダーの Allow 属性に POST メソッドが含まれていない場合、
3 現時点では 2 番目のリクエストは送信されません。参照 サーバー コンソールは、POST メソッドがサーバーでサポートされていないことを示すエラーを報告します。
関連する推奨事項:
Ajax クロスドメインリクエストのパーサーエラーエラー解決策
JS は Ajax クロスドメインリクエストのフラスコ応答コンテンツを実装します
以上がAjax クロスドメイン アクセス エラー 501 の解決策の詳細な例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。