Sto sviluppando un progetto su Google app engine (framework webapp). Ho bisogno che voi le persone valutino come gestisco le eccezioni.progettazione per la gestione delle eccezioni - motore di app google
Ci sono 4 tipi di eccezioni sto Manipolazione:
- eccezioni Programmazione
- ingresso
- URL non corretti Bad utente
- stringhe di query non corretti
Ecco come gestire loro:
Ho sottoclassi la classe webapp.requesthandler e ho annullato il metodo handle_exceptions. Ogni volta che si verifica un'eccezione, porto l'utente a una pagina amichevole "ci dispiace" e nel frattempo inviamo un messaggio con il traceback agli amministratori.
Sul lato client, utilizzo (j) e convalida anche sul lato server. Qui immagino (come programmatore con esperienza non web) oltre a convalidare gli ingressi in base alla logica di programmazione (controllare: l'input in contanti è di tipo float?) E le regole aziendali (controllare: l'utente ha abbastanza punti per intraprendere quell'azione?), Devo anche verificare le intenzioni malevole. Quali misure dovrei prendere nei confronti di azioni dannose?
Ho un URL catch-all che gestisce gli URL non corretti. Vale a dire, porto l'utente in una pagina personalizzata "pagina inesistente". Qui non ho problemi, penso.
Le stringhe di query errate generano presumibilmente eccezioni se lasciate a se stesse. Se un ID non esiste, il metodo restituisce None (è in corso un'eccezione). se il parametro è inopportuno, il codice solleva un'eccezione. Qui penso di dover aumentare un 404 e portare l'utente alla pagina personalizzata "pagina inesistente". Cosa dovrei fare?
Quali sono le tue opinioni? Grazie in anticipo ..
Non c'è motivo di fare convalida per input malevoli dal lato client - qualsiasi utente malintenzionato lo disabiliterà o lo eleverà. –
ok, cosa devo fare sul lato server? – shanyu