È una cattiva pratica eseguire reindirizzamenti dalle classi di controller?

3

In pratica sto associando un listener a un evento che viene attivato al termine di un'azione del controller. Detto listener ha una dipendenza che chiama un client API di terze parti e fa qualche azione. I.e: crea un nuovo documento in google drive).

Seguendo l'esempio, se l'utente non ha autorizzato tramite OAuth2, il sistema dovrebbe reindirizzare alla pagina OAuth. Questa azione verrà eseguita dall'ascoltatore.

È un cattivo design?

    
posta Christopher Francisco 25.01.2017 - 21:30
fonte

2 risposte

2

Rischia di dover collegare molti molti ascoltatori per questo problema di autorizzazione.

Idealmente lo farai tagliando, qualcosa che viene controllato prima che il controller che crea il documento di Google Drive venga richiamato. Se il tuo framework non fornisce alcun mezzo per farlo, aggiungerei esplicitamente "Sono autorizzato a farlo?" invocazioni al controller e non utilizzare listener.

Se non autorizzato, il controllore può commettere errori con "non autorizzato" che può essere catturato globalmente in qualche modo per attivare il reindirizzamento.

    
risposta data 27.01.2017 - 03:11
fonte
3

Sì.

Il modo corretto per farlo è con un attributo Authorize sull'azione del controller metodo.

    
risposta data 25.01.2017 - 21:49
fonte

Leggi altre domande sui tag