Foros del Web » Programación para mayores de 30 ;) » .NET »

Cambiar valor de ReturnURL

Estas en el tema de Cambiar valor de ReturnURL en el foro de .NET en Foros del Web. Hola amigos, he leido el tema de autenticacion de formularios, está interesante, pero tengo una duda... Si el usuario accede a una página y no ...
  #1 (permalink)  
Antiguo 28/02/2005, 06:56
 
Fecha de Ingreso: febrero-2005
Mensajes: 108
Antigüedad: 19 años, 2 meses
Puntos: 0
Cambiar valor de ReturnURL

Hola amigos, he leido el tema de autenticacion de formularios, está interesante, pero tengo una duda... Si el usuario accede a una página y no ha hecho el login salta la página para validar que le ponemso por defecto en el web.config y una vez validado con RedirectFromLoginPage se le envia a la pagina q solicitó, hasta aqui bien. El tema viene cuando el usuario solicita directamente la pagina para hacer login ya que entonces el valor de ReturnURL (q contiene la pagina solicitada) es cadena vacia y entonces nos redirecciona automaticamente a default.aspx y esto es lo que me gustaria cambiar, en lugar de que me lleve a default.aspx que me lleve a otra página en lugar de esta. Es posible??, un saludo
  #2 (permalink)  
Antiguo 28/02/2005, 10:35
 
Fecha de Ingreso: octubre-2004
Mensajes: 878
Antigüedad: 19 años, 6 meses
Puntos: 1
No se si hay una forma mas automatica pero si no te dicen nada puedes hacer algo asi como

if (ReturnURL== "")
Response.Redirect("Default.aspx",false);


Graffiti
  #3 (permalink)  
Antiguo 28/02/2005, 11:34
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 2 meses
Puntos: 50
Podrías intentar con ésto:

Cita:
Dim returnUrl As String = Request.QueryString("ReturnUrl")
If returnUrl Is Nothing Then
returnUrl = "mipagina.aspx"
End If

Response.Redirect(returnUrl)
salu2
__________________
Nadie roba nada ya que en la vida todo se paga . . .

Exentrit - Soluciones SharePoint & Net
  #4 (permalink)  
Antiguo 28/02/2005, 11:37
 
Fecha de Ingreso: febrero-2005
Mensajes: 108
Antigüedad: 19 años, 2 meses
Puntos: 0
Es q el tema es q ReturnURL no es una variable, creo q es una cookie, me pierdo con esto...alguna sugerencia?
  #5 (permalink)  
Antiguo 28/02/2005, 12:14
Avatar de neivan  
Fecha de Ingreso: febrero-2005
Mensajes: 539
Antigüedad: 19 años, 3 meses
Puntos: 1
Segun lo que entiendo yo y he visto en lo que te ha respondido rootk
No es ni una cookie ni una variable
Viene en la url
Esto que quiere decir,pues si te has fijao alguna vez en google por ejemplo cdo haces una busqueda,los nombres o palabras q buscas van directamente a traves de la url
Luego entrariamos ya en temas como el get o el post,envio de formularios...
La cosa es que si llmas a una pag como
mipagina.aspx?nombre=yo
desde esa pagina puedes acceder
request.QueryString("nombre") devolvera yo

Por lo q entiendo vamos
  #6 (permalink)  
Antiguo 28/02/2005, 12:28
 
Fecha de Ingreso: febrero-2005
Mensajes: 108
Antigüedad: 19 años, 2 meses
Puntos: 0
Ok, ya esta claro, lo he hecho como ha dicho Rootk y ha funcionado a las mil maravillas, el tema ahora es...como puedo pasar una variable de un webform a otro?

Gracias neivan a ti tb
  #7 (permalink)  
Antiguo 28/02/2005, 12:33
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 2 meses
Puntos: 50
Por Get
Cita:
Response.Redirect ("otraPagina.aspx?valor=1&valor2=33")
Y la recojes como lo hiciste con ReturnURL

O tambien con sessiones

Cita:
Session ("algo") = "algun valor"
Y para recogerla

otraPagina.aspx
Cita:
...
...
dim s as String = Ctype(Session("algo"),String)
'Libero session
Session("algo") = Nothing
Salu2
  #8 (permalink)  
Antiguo 28/02/2005, 12:38
Avatar de neivan  
Fecha de Ingreso: febrero-2005
Mensajes: 539
Antigüedad: 19 años, 3 meses
Puntos: 1
Pa tu caso si en cada pagina que entras necesitas saber el nombre del usuario como ponias en otro tema yo utilizaria variables d session y me olvidaria

La variable de session la asinas una vez y luego desde cualquier pagina mientras la session no caduque puedes acceder a esa variable

Sino cada vez q redireccionas tedras q poner despues dl nombre d la pag ?nombre=nombreusuario

Como veas
  #9 (permalink)  
Antiguo 28/02/2005, 12:55
 
Fecha de Ingreso: febrero-2005
Mensajes: 108
Antigüedad: 19 años, 2 meses
Puntos: 0
Claro, por cierto Rootk lo q me comentaste de ReturnURL no me funciona, he dicho q si en un principio porque he probado a acceder a otra pagina, pero si accedo a la de login, no me funciona ese metodo...pego codigo...

Else


Session("usuario") = txtuser.Text

If miURL Is Nothing Then

Response.Redirect("principal.aspx", True)

miCmd.Connection.Close()

miReader.Close()

End If

FormsAuthentication.RedirectFromLoginPage(txtuser. Text, False)

miCmd.Connection.Close()

miReader.Close()



End If

Edito para decir que me carga la pagina de login de nuevo...y en la barra de URL me sale

http://localhost/Proyecto/default.as...principal.aspx

Me pierdo, la carpeta Proyecto es la q contiene todos los .aspx...porque toma ese valor ReturnURL???...un saludo,

Última edición por Wilotas; 28/02/2005 a las 12:57
  #10 (permalink)  
Antiguo 28/02/2005, 13:11
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 2 meses
Puntos: 50
Mira, el valor returnURL es un valor que automaticamente genera cuando usas la autentificacion.. ese valor no lo puedes cambiar.. pero si puedes manipular tu informacion como quieras...

Podrías hacer ésto:

Cita:
...
....
If miURL Is Nothing Then

Response.Redirect("principal.aspx", True)

miCmd.Connection.Close()

miReader.Close()

End If

FormsAuthentication.SetAuthCookie(txtuser. Text, False)
response.redirect("otra_pagina.aspx")
...

miCmd.Connection.Close()
miReader.Close()
  #11 (permalink)  
Antiguo 28/02/2005, 13:40
 
Fecha de Ingreso: febrero-2005
Mensajes: 108
Antigüedad: 19 años, 2 meses
Puntos: 0
No si el problema creo q no es ese, es decir, si me piden un recurso sin validarse, si q me lleva a la pagina de login y al hacer el login el RedirectFromLoginPage funciona bien, me muestra la URL q solicito el user, el problema viene en el if primero, que el redirect lo hace de una forma extraña y no me lleva a principal.aspx me lleva a un valor de ReturnURL q no se de donde lo saca...

http://localhost/Proyecto/default.as...fprincipal.asp x
  #12 (permalink)  
Antiguo 08/04/2005, 01:28
 
Fecha de Ingreso: octubre-2004
Mensajes: 79
Antigüedad: 19 años, 6 meses
Puntos: 0
respuesta

miren yo tuve un problema parecido...
pero lo k hice eske mi autentificacion es con consulta a base de datos
e hice lo siguiente,....
con dropdownlist tengo dos tipos de usuarios donde
digo k si es uno me tira a default.aspx o el otro a default2.aspx
el codigo es el siguiente
If Page.IsValid Then
Dim userDS As New System.Data.DataSet
userDS = GetUser(opcion1.selecteditem.text,user01.Text, Pass.Text)
If userDS.Tables(0).Rows.Count = 1 Then
If opcion1.selecteditem.text = "alumno" Then
FormsAuthentication.RedirectFromLoginPage(user01.T ext, false)

Else
response.redirect("default2.aspx")

End If

End If

End If

espero k sirva de algo
  #13 (permalink)  
Antiguo 08/04/2005, 13:28
 
Fecha de Ingreso: marzo-2005
Mensajes: 81
Antigüedad: 19 años, 1 mes
Puntos: 0
Ni modo, para solucionar eso tuve que crear el default.aspx y meterle un redirect a mi pagina principal :S
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:54.