Beszerzése az adatokat a szerverre keresztül letölteni

Ebben a leírásban, akkor nézd meg, mi van a lekérés és miben különbözik az XMLHttpRequest. Lekérése - Ez a javulás XMLHttpRequest, amely alapértelmezés használja Promis és több egyszerű és tiszta API.







Meg kell jegyezni, hogy azonnal a lekérés nem minden böngésző támogatja. Például az IE 10-11 ez nem működött. A Safari, működik változata 10. Természetesen Polyphemus, amely felhasználja XMLHttpRequest régebbi böngészők számára.

Hogy obraschatsya a szerver az adatokat, hozzunk létre az API vizsgálati adatokat mocky.io szolgáltatást.

Itt van egy JSON-adatok

Helyezze be a szervezet kérésére és előzetes üzemmódban válassza

Bármely domén obraschatsya ezen API.

Kattintson generálása választ, és kap egy link a API-t.

Most nézzük levelet lekérdezés segítségével a lekérés, amely lehetővé teszi számunkra, hogy az adatokat.

Az egyik árnyalata a lekérés, hogy nem kap közvetlenül a válasz adatokat, és a Stream-objektumot. Ez azt jelenti, hogy legyen a válaszunk elemezni, hogy megkapjuk az adatokat.

Itt használjuk .json módszer elemezni a válasz JSON. Az eredmény egyben felhívás .json PROMIS, így meg kell írni, akkor, ahol azt az eredményt kapjuk. Ha megnézzük a böngészőben, mi van a konzol kimenetet az adatokat.

Ez a kód akkor írj egy kicsit tisztább, majd elosztják 2 tervezési és elkerülve mély fészkelő

Ha megnézzük a böngésző, a kód ugyanúgy működik is.







Az adatok lekérése gyakran hibák és kell valahogy kezelni. A lekérés ezzel vannak árnyalatok. Általában úgy vélik, hogy ha írsz .catch, valami fogni az esetleges hibákat.

Elkapjuk nyilatkozatot adunk, de a csel leírás azt mondja, hogy csak akkor tartoznak a hálózati hibákat. Ez kapcsolódik a hálózathoz. Például, ha leesik a kérelmet timeout.

Ha azt akarjuk, hogy utolérjék a szokásos hibákat, azokat kell feldolgozni az első .és blokk. És mivel dolgozunk Promise tudjuk őket megoldódott és elutasítások, ha azt akarjuk,

Van hozzá egy további blokk megoldani, és elutasítja, amely lehetővé teszi, hogy végezzük a munkánkat megfelelően letölteni. A következők egyike sem, akkor sikertelen lesz a hiba, és mi azonnal esik a fogás.

Most már tudjuk, hogy egy 2 funkció a lánc, mivel meg kell egyeznie az összes felhasználási letölteni.

Ha például azt szeretnénk, hogy egy POST kérés, elég megadni módszer üzenet. Azt is hozzá egy test, szeretnénk közvetíteni a lekérdezésben.

Ahogy meglátjuk letölteni sokkal rugalmasabb, mint XMLHttpRequest. Mivel a használata PROMIS lehetővé teszi számunkra, hogy összekapcsolják a kódot kell.

És bár sok vállalat már ispolyut letölteni szeretném bejelenteni számos hátránya van, amelyet látok.

  1. Kód még mindig sok, és meg kell írni közrefogja a lekérés, ez volt kényelmes a használata
  2. Elemzési adatok nem különösen hasznos, ha kapok a szerver mindig a JSON, és a kódot kell írni
  3. Ha azt szeretnénk, hogy továbbítsák az adatokat a test formájában a tárgy, akkor meg kell hívni a tárgy JSON.stringify, ami kényelmetlen
  4. Hiba kezelése a lekérés, ha nem az összes hiba esik a fogási én személy szerint nem tetszik. Számomra logikus, hogy minden hibát mindig esik fogás

Van más megoldás ezekre a kérdésekre? Én szívesebben használják a könyvtárat vagy superagent Axiosz, ahol ezeket a kérdéseket már megoldódott, és annak szükségességét, hogy írjon kódot mimimum. Ezért, ha van egy választás, amely technológiát használja, próbálja ki ezeket a könyvtárak.

1 hónapja ezelőtt