J'ai réellement une fonction qui utilise plusieurs méthodes différentes pour rediriger en fonction du chemin que l'utilisateur a pris pour se rendre à la page de connexion.
La fonction que j'appelle après l'utilisateur se connecte en ressemble à:
Protected Sub doRedirect(ByVal sender As Object, ByVal e As System.EventArgs)
If Not Request.QueryString("rtn") Is Nothing Then
Response.Redirect(Request.QueryString("rtn").ToString)
ElseIf Me.hidden_return.Value <> "" Then
Response.Redirect(Me.hidden_return.Value)
ElseIf Not Request.UrlReferrer Is Nothing AndAlso Request.UrlReferrer.Segments(Request.UrlReferrer.Segments.Length - 1) <> "login.aspx" Then
Response.Redirect(Request.UrlReferrer.ToString)
Else
Response.Redirect("default.aspx")
End If
End Sub
Il est évident que tout cela pourrait être usurpée sur les clients finaux, mais je ne se soucient pas vraiment s'ils veulent s'usurper.
Ma mentalité à chaque fois que je l'utilise, c'est que si quelqu'un usurpe son référent alors je ne me soucie pas vraiment de savoir s'ils reviennent d'où ils viennent. Je crois que 99% du temps, il sera disponible et correct. Les 1% sont des utilisateurs avancés qui retrouveront leur chemin de toute façon. –
Je me souviens du jour où, tout à coup, la moitié du web a été brisée. Il s'est avéré Norton (ce bâtard) enlevait tous les renvois de mes messages ou obtient. J'étais tellement énervé ... – Will