HTTP-GET-Anfragen in JavaScript
Bei der Aufgabe, HTTP-GET-Anfragen in JavaScript zu stellen, insbesondere innerhalb eines Mac OS X Dashcode-Widgets, ist dies der Fall entscheidend für die Nutzung des von Browsern bereitgestellten XMLHttpRequest-Objekts. Hier ist ein Beispiel für eine synchrone Anfrage:
function httpGet(theUrl) { var xmlHttp = new XMLHttpRequest(); xmlHttp.open("GET", theUrl, false); // false for synchronous request xmlHttp.send(null); return xmlHttp.responseText; }
Von synchronen Anfragen wird jedoch abgeraten, da sie möglicherweise Auswirkungen auf die Benutzererfahrung haben. Stattdessen wird empfohlen, asynchrone Anfragen zu stellen und die Antwort innerhalb eines Event-Handlers zu verarbeiten:
function httpGetAsync(theUrl, callback) { var xmlHttp = new XMLHttpRequest(); xmlHttp.onreadystatechange = function() { if (xmlHttp.readyState == 4 && xmlHttp.status == 200) callback(xmlHttp.responseText); }; xmlHttp.open("GET", theUrl, true); // true for asynchronous xmlHttp.send(null); }
Dieser Ansatz sorgt für eine benutzerfreundlichere Erfahrung, indem er das Einfrieren von Haupt-Thread-Vorgängen während des Datenabrufs vermeidet.
Das obige ist der detaillierte Inhalt vonWie mache ich HTTP-GET-Anfragen in JavaScript: synchron vs. asynchron?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!