Fetch
Fetch предоставя интерфейс на JavaScript за отправяне на заявки и получаване на отговори в HTTP. Той също така предоставя глобален метод fetch(), който осигурява лесен, логичен начин за извличане на ресурси, асинхронно от мрежата.
Този вид функционалност е постигнато преди това чрез XMLHttpRequest. Fetch предоставя по-добра алтернатива, която може лесно да се използва.
Използване:
Пример
fetch('http://example.com/movies.json')
.then((response) => {
return response.json();
})
.then((data) => {
console.log(data);
});Примера извлича JSON файл от мрежата и го отпечатва на конзолата. Метода fetch приема един аргумент – пътят до ресурса, който искате да извлечете.
HTTP отговора не е действителен JSON. За да се извлече съдържанието на JSON файла от отговора, трябва да се използва метода json().
Изпращане на заявки
// Пример за заявка POST:
async function postData(url = '', data = {}) {
const response = await fetch(url, {
method: 'POST',
mode: 'cors',
cache: 'no-cache',
credentials: 'same-origin',
headers: {
'Content-Type': 'application/json'
},
redirect: 'follow',
referrerPolicy: 'no-referrer',
body: JSON.stringify(data)
});
return response.json();
}
postData('https://example.com/answer', { answer: 42 })
.then((data) => {
console.log(data);
});Атрибути
Стойност по подразбиране
Стойности
method
GET
GET, POST, PUT, DELETE, etc.
mode
cors
no-cors, cors, same-origin
cache
default
default, no-cache, reload, force-cache, only-if-cached
credentials
same-origin
include, *same-origin, omit
header
'Content-Type': 'application/json'
'Content-Type': 'application/x-www-form-urlencoded'
redirect
follow
manual, *follow, error
referrerPolicy
client
o-referrer, *client
body
-
body data type must match "Content-Type" header
Изпращане на JSON данни
Проверка дали извличането е успешно
Form data to Json
Last updated
Was this helpful?