Ett API utan resultat och ett med fel kräver två olika hanteringar. En lyckad sökning kan returnera inga platser inom det angivna området. Ett nätverksfel, uppnådd gräns eller otillgänglig källa förhindrar däremot slutsatser från sökningen.
För ROOTE, kontrollera HTTP-svaret, affärsstatus, förväntad samling och täckning. Detta undviker att visa ”inga toaletter” när ett tjänsteanrop misslyckats eller ”inga stopp” efter överskriden väntetid.
Läs de tre nivåerna i ett svar
| Nivå | Att kontrollera | Möjlig slutsats |
|---|---|---|
| Transport | Anslutning, timeout och HTTP-status | Lyckades förfrågan? |
| Avtal | Giltig JSON, version och förväntade fält | Är svaret användbart? |
| Affärsresultat | status, samlingar, täckning, varningar och metadata | Vad vet vi inom det begärda området? |
HTTP-kod 200 räcker inte för att godkänna en sökning. Svaret kan indikera delvis genomförande eller felstatus. En 404 på en rutt är inte normalt för att visa tom samling: kontrollera URL och avtal.
Förstå success, empty, partial och error
| Status | Rekommenderad hantering |
|---|---|
| success | Visa enheter efter validering och behåll begränsningar |
| empty | Ange att inget resultat returnerats för denna sökning |
| partial | Visa användbar information med dess varningar |
| error | Presentera sökningen som otillgänglig; dra inte slutsatsen att platser saknas |
Avsaknad av resultat gäller en förfrågan och kända källor. Det bevisar inte att inga tjänster existerar fysiskt. Ofullständig täckning, restriktivt filter eller tillämpad gräns kan minska resultaten.
Ett beslutsträd för ditt gränssnitt
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.
Kontrollera parametrar i rätt ordning
Kontrollera först latitud och longitud, deras ordning och erhållen stad. Granska sedan radieenhet och filterdefinitioner. API:t Services använder types=toilets; en kart-URL använder modes=toilets. Dessa parametrar hör till olika avtal.
Utöka sedan en dimension i taget: öka radien inom rutbegränsningen eller ta bort ett filter för ett explicit test. Behåll spår av ursprungsförfrågan. Om du expanderar automatiskt, informera användaren om det nya området.
Bygga en API-sökning kring GPS-koordinater
Hantera otillgänglig källa utan att förlora andra
Ett delvis svar kan innehålla platser från källor som svarat medan en annan misslyckats. Behåll dessa resultat, deras attributioner och relevant varning. Presentera inte listan som komplett och ersätt inte saknade fält med vilseledande standardvärden.
Även äldre cachad information kan vara användbar om er policy tillåter fallback. Den måste dock identifieras som gammal. Tidpunkten för mottagen förfrågan förnyar inte originalobservationen.
Anpassa meddelanden och återupptagningar
| Situation | Meddelande att anpassa i ert gränssnitt | Åtgärd |
|---|---|---|
| empty | Inga resultat returnerades i denna zon med dessa filter | Ändra område eller filter |
| partial | Vissa resultat finns; sökningen är ofullständig | Visa resultat och varning |
| Valideringsfel | Sökningen innehåller en ogiltig parameter | Korrigera förfrågan |
| Autentisering eller behörigheter | Denna åtkomst tillåter inte denna sökning | Kontrollera konto eller token |
| Gräns eller otillgänglighet | Sökningen är tillfälligt otillgänglig | Följ återupptagningsanvisningar |
Vid 429, se tjänstens instruktioner och eventuell Retry-After. Fel 400 kräver korrigering av argument; upprepad förfrågan löser det inte. Förvandla inte 401 till anonymt anrop om användaren angivit token.
Testa fyra tillstånd innan publicering
Förbered kompletta, tomma, partiella och felsvar, samt ogiltig JSON och timeout. Kontrollera visat meddelande, bevarade resultat och antal återupptagningar. Viktigt är att fel aldrig får ge intryck av frånvaro av tjänster.
Tillämpa regler på en AI-assistent
Vanliga frågor
Bevisar en tom lista att inga toaletter finns?
Nej. Den visar bara att inga resultat returnerats för denna sökning och de källor som undersökts.
Kan man visa ett delvis svar?
Ja, om de använda enheterna är giltiga och du behåller nödvändiga varningar och begränsningar.
Ska varje fel orsaka omförsök?
Nej. Korrigera parametervärden eller åtkomstfel; begränsa omförsök vid övergående problem och följ tjänstens anvisningar.