API を作成しましたが、Chrome のテスト .html ファイルからアクセスしようとしています。file:///... を介してファイルにアクセスしていますが、ローカルのファイルシステムの制限を受けています。API でクロス オリジン リクエスト アクセスを有効にしましたが、アクセスしようとすると次のようになります。
XMLHttpRequest は http:// を読み込めません。メソッド undefined は、Access-Control-Allow-Methods では許可されていません。
リクエスト/レスポンス ヘッダーは次のとおりです。
私が使用しているJavaScriptコードは次のとおりです。
var xmlhttp;
if (window.XMLHttpRequest) xmlhttp=new XMLHttpRequest();
else xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
if (params.success) params.success(xmlhttp.responseText);
} else if (xmlhttp.readyState == 4) {
if (params.error) params.error(xmlhttp, xmlhttp.status, xmlhttp.responseText);
}
};
xmlhttp.open(params.method, params.url, true);
xmlhttp.setRequestHeader('Content-Type', 'application/json');
xmlhttp.setRequestHeader('Accept', 'application/json, text/javascript, */*; q=0.01');
if (params.data) xmlhttp.send(params.data);
else xmlhttp.send();
jquery から $.getJSON を使用すると、API 呼び出しは正常に機能しますが、それは望ましくありません。純粋な JavaScript である必要があります。何が間違っている可能性がありますか?