Come gestire gli errori di codifica nel mio codice PHP AJAX?

1

Come gestisco gli errori di codifica nel mio PHP che non ha GUI, solo un'API? Sono preoccupato che non possa mai sapere che ce ne sono. Nota che svilupperò solo il lato client. Questa non è un'API pubblica.

  • Devo affermare che ho provato così accuratamente che non ce ne sono?
  • Non li gestisco e attendo che gli utenti si lamentino che l'app non funziona?
  • Invio una risposta HTPP 501, forse con qualche indicazione su cosa è andato storto? In tal caso, ho un pop-up per l'utente, forse chiedendo loro di contattarmi?
  • Oppure usa un codice di risposta proprietario, dal momento che sto codificando entrambi i lati dell'IA e nessun altro lo farà mai?
  • O dovrei avere il mio codice PHP per mandarmi un'email, con i dettagli dell'errore?
  • Altri approcci?
posta Mawg 17.02.2015 - 07:34
fonte

1 risposta

2

La gestione degli errori di un'API è esattamente la stessa della gestione degli errori di qualsiasi applicazione web. Le eccezioni devono essere registrate su un server syslog centrale e il registro centrale dovrebbe essere revisionato regolarmente. Se usi un framework, il framework dovrebbe gestirlo per te.

L'invio di e-mail tramite PHP ogni volta che si verifica un'eccezione è un percorso rischioso. Cosa succede se si verificano eccezioni all'interno del mittente stesso? Cosa succede se il server SMTP non funziona e non si ricevono e-mail per settimane? Cosa succede se un hacker genera intenzionalmente migliaia di eccezioni al secondo?

Il codice di risposta nel caso di un'eccezione dovrebbe essere l'errore del server interno HTTP 500. Non ci si aspetta che tu inventi i tuoi codici di risposta, poiché il punto dell'API è di utilizzare un'interfaccia standard che qualsiasi sviluppatore può comprendere. Se usi un framework, il framework dovrebbe gestirlo per te.

Non affermare mai di aver provato la tua app così bene che non ci sono bug. Verranno trovati bug e la reputazione della tua azienda ne risentirà.

L'applicazione del client dovrebbe reagire a HTTP 500 dipende dall'applicazione. Può informare l'utente che qualcosa è andato storto. Oppure puoi riprovare. Oppure invia una richiesta AJAX contenente l'errore e la traccia dello stack. Evita i popup, poiché sono fastidiosi e verranno eliminati la maggior parte del tempo. Non chiedere all'utente di contattarti: è già infastidito dal fatto che la tua applicazione non funzioni, quindi non sei nella posizione di chiedere nulla all'utente. D'altra parte, chiedere scusa e fornire un indirizzo per il supporto è bello.

    
risposta data 17.02.2015 - 08:02
fonte

Leggi altre domande sui tag