Pradžia/Vadovai/Kūrėjai
Kūrėjai

Nėra rezultato ar API klaida: kaip atskirti?

Atpažinkite tuščią rezultatą, dalinę atsakymą ir ROOTE API klaidas. Patikrinkite koordinates, filtrus, aprėptį ir ribas tinkamam pranešimui rodyti.

By ROOTE·7 min skaitymo
Nėra rezultato ar API klaida: kaip atskirti?
Tuščias atsakymas nėra klaida.

Svarbiausia per kelias sekundes

Pradėkite nuo HTTP transporto, tada patikrinkite turinį ir verslo statusą. Tuščias paieškos rezultatas nėra klaida; klaida nereiškia paslaugų nebuvimo. Dalykinį atsakymą galima naudoti kartu su įspėjimais.

API be rezultato ir API su klaida reikalauja skirtingo apdorojimo. Sėkminga paieška gali negrąžinti jokių objektų nurodytame rajone. Priešingai, tinklo klaida, pasiekti apribojimai ar nepasiekiamas šaltinis neleidžia padaryti išvados iš paieškos.

ROOTE atveju pirmiausia patikrinkite HTTP atsakymą, tada verslo statusą, laukiamą kolekciją ir aprėptį. Šis metodas padeda išvengti „nėra tualetų“ rodymo, jei Serviso kvietimas nepavyko, arba „nėra sustojimų“ po per ilgo laukimo.

Perskaitykite tris atsakymo lygius

LygmuoPatikrintiGalimas išvada
TransportasRyšys, laukimo laikas ir HTTP statusasAr užklausa įvykdyta sėkmingai?
SutartisGaliojantis JSON, versija ir laukiamų laukų buvimasAr atsakymas gali būti panaudotas?
Verslo rezultatasstatus, kolekcijos, aprėptis, įspėjimai ir meta duomenysKą žinome prašytame aprėptyje?

HTTP 200 kodas nepakanka, kad paieška būtų patvirtinta. Atsakyme gali būti nurodyta dalinė vykdymo sėkmė arba klaidos statusas. Priešingai, 404 klaida maršrute nėra įprastas būdas išreikšti tuščią kolekciją: patikrinkite URL ir sutartį.

Suprasti success, empty, partial ir error

StatusasRekomenduojamas apdorojimas
successRodyti objektus po patvirtinimo ir išlaikyti ribas
emptyNurodyti, kad paieška negrąžino jokių rezultatų
partialRodyti panaudojamą informaciją su įspėjimais
errorRodyti paiešką kaip neprieinamą; nepadaryti išvados apie objektų nebuvimą

Rezultatų nebuvimas taikomas žinomai užklausai ir šaltiniams. Tai neįrodo, kad paslaugos fiziškai neegzistuoja. Nepilna aprėptis, siauras filtras ar taikomi apribojimai gali sumažinti rezultatus.

Sprendimų medis jūsų sąsajai

1. La requête a-t-elle abouti ?
   Non → indisponibilité réseau ou délai dépassé.
2. Le statut HTTP est-il acceptable selon le contrat ?
   Non → traiter le code et le message d'erreur.
3. Le JSON respecte-t-il le schéma attendu ?
   Non → réponse inexploitable, jamais "aucun résultat".
4. Le statut métier est-il error ?
   Oui → recherche indisponible.
5. Le statut est-il partial ou la couverture limitée ?
   Oui → résultats utilisables + avertissement.
6. La collection attendue est-elle vide ?
   Oui → aucun résultat retourné dans ce périmètre.
   Non → afficher les résultats et leurs limites.

Patikrinkite parametrus tinkama tvarka

Pirmiausia patikrinkite platumą ir ilgumą, jų seką ir gautą miestą. Po to patikrinkite spindulio vienetą ir filtrų žodyną. API Services naudoja types=toilets; žemėlapio URL naudoja modes=toilets. Šie parametrai priklauso skirtingoms sutarčių sistemoms.

Tada išplėskite po vieną dimensiją: padidinkite spindulį maršruto ribose arba pašalinkite filtrą aiškiam testui. Išsaugokite pradinės užklausos pėdsaką. Jei automatiškai išplečiate, informuokite vartotoją apie naują aprėptį.

Sukurkite API paiešką aplink GPS koordinates

Tvarkykite nepasiekiamą šaltinį neprarandant kitų

Dalinė ataskaita gali apimti objektus iš atsakusių šaltinių, kai kitas nepavyko. Išlaikykite šiuos rezultatus, jų autorystę ir atitinkamą įspėjimą. Neneikite, kad sąrašas yra išsamus ir nepakeiskite trūkstamų laukų apgaulingais numatytaisiais duomenimis.

Sena informacija, saugoma talpykloje, taip pat gali būti naudinga, jei jūsų politika leidžia šią atsarginę galimybę. Ji turi likti pažymėta kaip sena. Jūsų užklausos gavimo laikas nepakeičia pradinio stebėjimo datos.

Priderinkite pranešimus ir išlyginimus

SituacijaPranešimas jūsų sąsajaiVeiksmas
emptyŠioje teritorijoje su tais filtrais grąžinti rezultatai nerastiPakeiskite teritoriją arba filtrus
partialKai kurie rezultatai yra; paieška nepilnaRodyti rezultatus ir įspėjimą
Validacijos klaidaPaieškoje yra neleistinas parametrasPataisykite užklausą
Autentifikacija arba teisėsŠis prieigos raktas neleidžia atlikti šios paieškosPatikrinkite paskyrą arba žetoną
Ribojimas arba neprieinamumasPaieška laikinai neprieinamaLaikykitės atkūrimo gairių

429 klaidos atveju pasitikrinkite paslaugos instrukcijas ir galimą Retry-After laikotarpį. 400 klaida reikalauja argumentų pataisos; ta pati užklausa kartoti nepadeda. Nenukreipkite 401 klaidos į automatinį anoniminį kvietimą, jei vartotojas pateikė žetoną.

ROOTE API klaidų kodų sąrašas

ROOTE paslaugų būklė

Patikrinkite keturias būsenas prieš publikuojant

Paruoškite testinius pilnus, tuščius, dalinius ir klaidų atsakymus, taip pat negaliojantį JSON ir timeout’ą. Patikrinkite rodomą pranešimą, išsaugotus rezultatus ir pritaikytų atkūrimo bandymų skaičių. Pagrindinis testas: klaidos neturi lemti paslaugų nebuvimo teiginio.

Taikykite šias taisykles dirbtinio intelekto asistentui

Supraskite mobilumo duomenų formatus

KūrėjamsROOTE Mobility API

Mobilumas aplink tašką.
Tiesiogiai jūsų programėlėje.

  • Ieškoti
    aplink vietą
  • Prieigos prie
    mobilumo duomenų
  • Integruoti į
    jūsų programėlę

Pereikite nuo žemėlapio prie duomenų: ieškokite mobilumo ir paslaugų netoli su ROOTE API.

Dažniausiai užduodami klausimai

Ar tuščias sąrašas įrodo tualetų nebuvimą?

Ne. Tai tik rodo, kad paieška ir naudotos duomenų šaltiniai negrąžino rezultatų.

Ar galima rodyti dalinį atsakymą?

Taip, jei panaudojami objektai yra galiojantys ir išlaikomi reikalingi įspėjimai bei ribojimai.

Ar reikia kartoti kiekvieną klaidą?

Ne. Pataisykite parametrų ar prieigos klaidas; apribokite pakartojimus laikiniems incidentams ir laikykitės paslaugos gairių.

O jei pažvelgtumėte aplink save?

Apžvelkite savo kvartalą su ROOTE ir raskite prieinamą informaciją, kad pasiruoštumėte kelionei.

Tyrinėti ROOTE žemėlapį ↗