Junior
fetch ыкмасы эмне кабыл алат?
sobes.tech AI
AIден жооп
fetch ыкмасы бир обязательный аргумент — сураныч жолуна (RequestInfo же URL) — жана бир опционалдуу аргумент — жөнөтүү жөндөөлөрүнүн объектиси (RequestInit).
Обязательный аргумент (input):
- Жол: ресурстун URLи.
Requestобъектиси:Requestклассынын үлгүсү, ал суранычты көбүрөөк ийкемдүү жөндөөгө мүмкүндүк берет (титулдар, ыкма жана башка).
Опционалдуу аргумент (init): Суранычтын жөндөөлөрүн сүрөттөгөн полелери бар объект. Кээ бир кеңири колдонулган талаалар:
method: HTTP ыкмасы (GET,POST,PUT,DELETE,OPTIONSжана башка).headers: Суранычтын башталыштары. Бул ачкыч-баа түрүндөгү объект жеHeadersклассынын үлгүсү болушу мүмкүн.body: Суранычтын денеси (эгерGETжеHEADэмес ыкмалар үчүн). Бул жол,ArrayBuffer,TypedArray,DataView,Blob,FormData,URLSearchParamsжеReadableStreamболушу мүмкүн.mode: Суранычтын режими (cors,no-cors,same-origin,navigate).credentials: Идентификация маалыматтарын жөнөтүү жөндөөлөрү (omit,same-origin,include).cache: Кэшке алуу жөндөөлөрү (default,no-store,reload,no-cache,force-cache,only-if-cached).redirect: Кантип кайра багыттоолорду иштетүү (follow,error,manual).referrer:Refererбашталышы үчүн мааниси.referrerPolicy:Refererбашталышын өткөрүү саясаты.integrity:Integrityбашталышы үчүн мааниси. Subresource Integrity үчүн колдонулат.keepalive: Бул мааниси, сураныч бет аяктагандан кийин активдүү калуусу керекпи (аналитика же отчетторду жөнөтүү үчүн).signal: Суранычты жокко чыгаруу үчүнAbortSignalүлгүсү.window: Сураныч менен байланышканWindowобъектиси (өзүнчө, учурдагы терезе).
Куллануу мисалы:
// GET сураныч
fetch('/api/users')
.then(response => response.json())
.then(data => console.log(data))
.catch(error => console.error('Ката:', error));
// Тело жана башталыштары менен POST сураныч
fetch('/api/products', {
method: 'POST', // HTTP ыкмасы
headers: {
'Content-Type': 'application/json', // Маалымат түрү
'Authorization': 'Bearer your_token' // Мисал, уруксат башталышы
},
body: JSON.stringify({ name: 'Жаңы продукт', price: 100 }) // Суранычтын денеси
})
.then(response => {
if (!response.ok) {
throw new Error(`HTTP ката! статус: ${response.status}`);
}
return response.json();
})
.then(data => console.log('Ийгилик:', data))
.catch(error => console.error('Ката:', error));