Table of Contents

Spiegazione dei codici di errore delle api di riconoscimento cloud

Formato di risposta

Tutte le risposte API utilizzano un formato JSON unificato. Di seguito un esempio:

{

  "statusCode": 422,

  "reuslt": "The image or meta exceeds its maximum permitted size",

  "timestamp": 1514736000000,

  "appKey": "test_app_key"

}
Campo Tipo Descrizione
statusCode integer Codice di stato business. 0 indica successo, non 0 indica errore
result string Contenuto restituito. Se il codice di stato è 0, restituisce la struttura dell'oggetto immagine target; altrimenti restituisce un messaggio di errore
timestamp long Timestamp Unix del server (in millisecondi)
Importante

La chiave result contiene il contenuto di risposta SOLO quando statusCode == 0. Negli altri casi, result restituisce un messaggio di errore.

Classificazione dei codici di errore

Spiegazione dei codici di stato http

Codice di stato HTTP Descrizione
200 Richiesta riuscita (può contenere errori business)
400 Errore nei parametri della richiesta
401 Autenticazione APIKey fallita
403 Permessi insufficienti o accesso alla risorsa vietato
404 Percorso URL dell'API richiesta non esistente
500 Errore interno del server
501 Eccezione dell'applicazione catturata, possibile errore nei dati
502 Server non disponibile, contattare l'assistenza
Nota

Gli errori business vengono generalmente restituiti con risposta HTTP 200, identificati nel campo statusCode.

Tabella riepilogativa dei codici di stato business

Status Code Message
0 ok
1 invalid appId (appKey)
2 invalid signature
3 invalid date
4 appId (appKey) not exist
6 invalid token
6 invalid appkey token
7 non-sdk client for dau databases
8 Dau databases are not compatible with sense-4.6+ any more.
404 Target not found
414 Parameter required not exists or not correct
422 The image or meta exceeds its maximum permitted size
417 fail to add image
419 Cannot update target in database because similar target exists.
420 Target delete failed
424 Target enable error
403 Target already exists
426 Judge exceeds maxium candidates
427 Image not correct

Scenari di errore comuni

Nessuna risposta per timeout

  • Request Timeout: Rete lenta, si consiglia di verificare l'ambiente di rete del client

Errori relativi all'autenticazione

  • Http 401 Unauthorized: Autenticazione APIKey fallita, verificare la correttezza di appId/appKey
  • Codice di stato 401: Chiave applicazione non valida o applicazione inesistente, verificare la configurazione dell'applicazione

Errori nei parametri

  • 400 Bad Request: Formato dei parametri della richiesta errato
  • Codice di stato 414: Parametro obbligatorio mancante o valore non conforme ai requisiti

Errori nelle operazioni sulle risorse

  • Codice di stato 404: La risorsa target cercata non esiste
  • Codice di stato 403: Target già esistente, impossibile crearlo nuovamente
  • Codice di stato 417/420/424: Operazioni di aggiunta, eliminazione o modifica fallite

Errori relativi ai file

  • Codice di stato 422: Dimensione del file caricato supera il limite consentito
  • Codice di stato 427: Formato immagine non supportato o file danneggiato

Errori di sistema

  • Http 500 Internal Server Error: Eccezione interna del server, si consiglia di testare sul sito web o con un sample
  • Http 501 Exception: Eccezione dell'applicazione catturata, possibile errore nei dati, si consiglia di testare sul sito web o con un sample
  • Http 502 Server: Errore di risposta del servizio, possibile errore del server, si consiglia di contattarci

Migliori pratiche consigliate

  1. Gestione lato client: Si consiglia di determinare il successo business in base al campo statusCode, non solo al codice di stato HTTP
  2. Riprova in caso di errore: Per errori 5xx è possibile effettuare tentativi di ripetizione; per errori 4xx verificare i parametri della richiesta
  3. Registrazione dei log: Si consiglia di registrare la risposta di errore completa per facilitare la risoluzione dei problemi
  4. Gestione dei timeout: Impostare un timeout di richiesta ragionevole per evitare attese prolungate