Fetch API
async function fetchData() { try { const response = await fetch("https://jsonplaceholder.typicode.com/posts"); if (!response.ok) { throw new Error("Network response was not ok"); } const data = await response.json(); console.log(data); } catch (error) { console.error("Error fetching data:", error); }}
fetchData();fetch("https://jsonplaceholder.typicode.com/posts", { method: "POST", body: JSON.stringify({ title: "foo", body: "bar", userId: 1, }), headers: { "Content-type": "application/json; charset=UTF-8", },}) .then((response) => response.json()) .then((data) => { console.log(data); });创建Ajax
Section titled “创建Ajax”let xhr = new XMLHttpRequest();
xhr.open("GET", "https://jsonplaceholder.typicode.com/posts", true);xhr.setRequestHeader("Content-Type", "application/json"xhr.onload = function () { if (xhr.status === 200) { console.log(JSON.parse(xhr.responseText)); }};xhr.send(null);Promise封装
Section titled “Promise封装”function ajaxPromise(url) { let promise = new Promise((resolve, reject) => { let xhr = new XMLHttpRequest(); xhr.open("GET", url, true); xhr.onreadystatechange = function () { if (xhr.readyState === 4) { if (xhr.status === 200) { resolve(JSON.parse(xhr.responseText)); } else { reject(new Error(xhr.statusText)); } } }; xhr.send(null); }); return promise;}
ajaxPromise("https://jsonplaceholder.typicode.com/posts") .then((data) => { console.log(data); }) .catch((error) => { console.error(error); });