-1
バーコードデータベースAPI(http://upcdatabase.org/api)からデータを取得するJavascriptでアプリケーションを作成しようとしています。 AJAXリクエストを作成すると、GETリクエストがAPIに到達します。 APIのウェブサイトから、私が何回もリクエストしたことがわかります。XMLHttpRequest.statusがAJAXリクエストで "0"です
ただし、Firefox、Chrome、およびEdgeでは毎回XMLHttpRequest.statusが「0」になっています。私はこれを初めてやったので、何かが足りないと感じています。ここで
は、私が使用しているコードは次のとおりです。助けることができる誰にでも
var upc = prompt("Enter UPC Code:");
var requestUrl = "https://api.upcdatabase.org/product/" + upc +
"/73114EC2F9C47240583DBF3AA190CB4C";
function httpGetAsync(theUrl)
{
var xmlHttp = new XMLHttpRequest();
xmlHttp.onreadystatechange = function() {
if (xmlHttp.readyState == 4 && xmlHttp.status == 200)
alert(xmlHttp.responseText);
}
xmlHttp.open("GET", theUrl, true);
xmlHttp.send();
alert(xmlHttp.status);
}
httpGetAsync(requestUrl);
ありがとう! documentationから
コールがまだ返されていないためステータスが0です... – Dekel
詳しい説明はありますか?コードの早い段階でステータスを求めていますか? – Odocoileus
@Odocoileus AJAXは非同期です。あなたは何かが起こる前の状態を求めています。それを 'onreadystatechange'関数に入れます。 – Barmar