Junior
Mit fogad el a fetch metódus?
sobes.tech MI
Válasz az MI-től
A fetch módszer egy kötelező argumentumot — a kérés útját (RequestInfo vagy URL) — és egy opcionális argumentumot — egy konfigurációs objektumot (RequestInit) fogad.
Kötelező argumentum (input) :
- Sztring: az erőforrás URL-je.
Requestobjektum: ARequestosztály példánya, amely rugalmasabb konfigurációt tesz lehetővé a kéréshez (fejlécek, módszer stb.).
Opcionális argumentum (init) : Egy olyan objektum, amely leírja a kérés konfigurációját. Néhány gyakran használt mező:
method: A HTTP kérés módszere (GET,POST,PUT,DELETE,OPTIONSstb.).headers: A kérés fejlécei. Lehet kulcs-érték páros objektum vagyHeadersosztály példánya.body: A kérés törzse (különböző módszerekhez, mint példáulGETvagyHEAD). Lehet sztring,ArrayBuffer,TypedArray,DataView,Blob,FormData,URLSearchParamsvagyReadableStream.mode: A kérés módja (cors,no-cors,same-origin,navigate).credentials: Hitelesítési adatok küldésének beállítása (omit,same-origin,include).cache: A cache beállítása (default,no-store,reload,no-cache,force-cache,only-if-cached).redirect: A redirect kezelés módja (follow,error,manual).referrer: AzRefererfejléc értéke.referrerPolicy: ARefererfejléc küldési politikája.integrity: AzIntegrityfejléc értéke. A Subresource Integrity-hez használják.keepalive: Igaz/hamis érték, amely megadja, hogy a kérésnek aktívnak kell maradnia a oldal bezárása után (pl. elemzések vagy jelentések küldése).signal: AzAbortSignalpéldánya a kérés megszakításához.window: A Window objektum, amelyhez a kérés kapcsolódik (alapértelmezés szerint a jelenlegi ablak).
Példa:
// GET kérés
fetch('/api/users')
.then(response => response.json())
.then(data => console.log(data))
.catch(error => console.error('Hiba:', error));
// POST kérés törzzsel és fejlécekkel
fetch('/api/products', {
method: 'POST', // HTTP módszer
headers: {
'Content-Type': 'application/json', // Küldött adatok típusa
'Authorization': 'Bearer your_token' // Példa az engedélyezési fejlécre
},
body: JSON.stringify({ name: 'Új termék', price: 100 }) // Kérés törzse
})
.then(response => {
if (!response.ok) {
throw new Error(`HTTP hiba! státusz: ${response.status}`);
}
return response.json();
})
.then(data => console.log('Siker:', data))
.catch(error => console.error('Hiba:', error));