1.3 KiB
1.3 KiB
- Современный стандарт на замену XMLHTTPRequest
- Поддерживается всеми современными браузерами
- Работает на промисах
Пример кода
Чуть чуть было написано в ECMAScript
async function getData() {
const url = "https://example.org/products.json";
try {
const response = await fetch(url);
if (!response.ok) {
throw new Error(`{response.status}`);
}
const json = await response.json();
console.log(json);
} catch (error) {
console.error(error.message);
}
}
Отправление данных через POST
async function checkPoint(x, y, r) {
const pointData = {x: x, y: y, r: r};
const response = await fetch("/api/check", {
method: "POST",
headers: {
"Content-Type": "application/json"
},
body: JSON.stringify(pointData)
});
const res = await response.json();
console.log(res.hit);
}
Как работает
- Получение данных работает в два этапа: асинхронное получение ответа, затем асинхронное получение тела (данные могут быть большими и передаться потоком - Stream)