Dopo aver dato un’occhiata alle basi delle API di Bing e di come possiamo utilizzarle (post1, post2 e post3) , in questo post ci occuperemo di come gestire eventuali errori.
Supponiamo di eseguire la seguente richiesta Get:
http://api.search.live.net/xml.aspx?Appid=<appid>&query=&sources=images
dove <appid> è il nostro AppID descritto nei precedenti post.
Il risultato che otteniamo è il seguente:
Eventuali errori nella richiesta sono contenuti nella collezione di nodi <Errors> il cui singolo figlio ha il seguente formato:
Tra i child del nodo <Error> troviamo:
<Code> : codice del messaggio d’errore (vedere tabella seguente);
<Message> : messaggio d’errore;
<Parameter> : eventuale parametro che ha generato l’errore;
<Value> : valore del parametro errato;
<HelpUrl> : URL della pagina MSDN di aiuto.
L’errore si verifica, generalmente, se l’URL della richiesta non è corretto oppure se la piattaforma Bing ha dei problemi oppure se l’appid utilizzato non è valido.
Non vengono restituiti errori, invece, se la ricerca non ha trovato risultati. In questo caso si hanno le collezioni dei risultati vuote.
Nella seguente tabella sono riportati i possibili errori (nell’attuale versione delle API) che si possono verificare:
Codice | Descrizione |
1001 | Nei parametri della query non è presente un parametro obbligatorio. In questo caso, il nodo <Parameter> fornisce indicazioni su quale parametro manca e non è presente il nodo <Value>. |
1002 | Un parametro ha un valore errato. Il nodo <Parameter> fornisce indicazioni sul nome del parametro mentre il nodo <Value> riporta il valore errato. |
1005 | La query è troppo lunga. La query non può superare i 2048 bytes. |
2001 | L’appid che si sta utilizzando potrebbe essere disabilitato. Se l’appid è errato, si ottiene un errore con codice 1002. |
2002 | L’appid ha superato il massimo numero di bytes scaricabili. Per maggiori informazioni si può consultare i termini di utilizzo del servizio. |
2003 | L’appid che si sta utilizzando, pur essendo valido, non ha accesso alla sorgente di ricerca richiesta. Può succedere che alcune sorgenti di ricerca siano disponibili solo per particolari contratti con Microsoft. |
3001 | Una o più delle sorgenti di ricerca richieste non sono attualmente disponibili. |
3002 | Le API di Bing sono momentaneamente non disponibili. |
4001 | Per comprendere il tipo di errore è necessario |
Riferimenti
Per maggiori informazioni potete consultare la documentazione presente ai seguenti link:
Bing API, Version 2
Bing Developer Center
Commenti