Junior — Middle
Kaip galima įgyvendinti laukimo ar vėlavimo mechanizmą API kvietimo metu?
sobes.tech AI
Atsakymas iš AI
Norint įgyvendinti laukimo arba delsimo mechanizmą API kvietimo metu, galima naudoti keletą požiūrių:
-
Aiškus delsimas (sleep) — naudojant funkcijas, kurios sustabdo vykdymą tam tikram laikui. Pavyzdžiui, JavaScript'e tai yra
setTimeoutarbaawait new Promise(resolve => setTimeout(resolve, ms)). -
Atsakymo laukimas (polling) — periodiškai tikrinant API su vėlavimais tarp užklausų, kol bus gautas norimas rezultatas.
-
Asinchroninių iškvietimų naudojimas su laiko limitu — pavyzdžiui, Python'e su
asyncio.sleeparba nustatant užklausos timeout'ą.
Pavyzdys JavaScript'e su vėlavimu prieš API kvietimą:
async function callApiWithDelay() {
await new Promise(resolve => setTimeout(resolve, 2000)); // 2 sekundžių vėlavimas
const response = await fetch('https://api.example.com/data');
const data = await response.json();
return data;
}
Šis požiūris leidžia kontroliuoti laiką tarp užklausų, kas naudinga norint riboti serverio apkrovą arba laikytis API limitų.