2009-07-31 741 views
6

Este es el problema.Autenticación de formularios Causa de redirección Pérdida de ancla

Utilizo Anchors como una forma no refrescante de permitir el marcado de los objetos que se ven actualmente.

http://myserver/showobject.aspx#objectid=10

Yo uso este modo cuando se actualiza el identificador de objeto que no se trata de hacer una actualización en la página.

Aquí está el problema.

Estoy utilizando formas de autenticación para manejar el acceso a estas páginas. Por lo tanto, cuando intente navegar al enlace anterior sin haber iniciado sesión primero, lo redireccionará a la página de inicio de sesión. Una vez que haya sido autenticado con éxito, FormsAuthentication.RedirectFromLoginPage (...) usted a la página de donde vino.

Excepto que troncaliza el # objectid = 10 bit desactivado.

He pensado en algunos hacks (configurar una cookie antes de redirigir a la página de inicio de sesión y luego leer la cookie y actualizar el enlace después de que se hace "RedirectFromLoginPage"), pero me preguntaba si había cualquier forma real de hacer que FormsAuthentication.RedirectFromLoginPage haga lo que realmente quiero que haga.

Así recapitular:

Gracias por la ayuda de antemano,

Juan.

Respuesta

2

cookie temporal es el camino a seguir aquí. los navegadores web no envían nada después del "#" cuando le dicen al servidor de qué URL se derivan, por lo que el servidor no puede capturar esa información y saber usarla después de que el usuario inicie sesión

1

Esa parte de la URL se llama fragmento y no se ve por el lado del servidor. Hay formas extravagantes con una página intersticial y un poco de javascript, pero puede ser complicado.

-2

¿Podría el problema ser el signo de la libra en lugar del signo de interrogación en su cadena de consulta?

Puedo utilizar la autenticación de formularios y no tener ningún problema al utilizar

page.aspx?value=x

Cuestiones relacionadas