2011-10-09 12 views
6

Estoy tratando de integrar DotNetOpenAuth con un sitio que usa jquery mobile. Me encuentro con un problema donde parece que jquery mobile está cancelando un redireccionamiento 302 a la parte proveedora (un sitio externo) con el que el servidor está respondiendo.cancelación de jquery móvil 302 redirigir al sitio externo

He intentado apagar el manejo con la siguiente en el evento mobileinit ajax jquery móvil por defecto:

$.mobile.ajaxEnabled = false; 

Si tomo jQuery Mobile fuera de la imagen de la redirección 302 se maneja correctamente y la integración de OpenID con la parte proveedora funciona bien.

¿Alguien me puede decir cómo hacer que jquery mobile maneje correctamente la redirección 302 a un sitio externo?

+0

relacionadas: http://stackoverflow.com/questions/199099/how-to-manage-a-redirect-request-after-a-jquery-ajax-call puede que tenga que escribir su propio método para manejar esto. Revisando el código jQM solo veo y éxito/error en la llamada ajax: http://code.jquery.com/mobile/1.0rc1/jquery.mobile-1.0rc1.js –

Respuesta

0

Para desactivar el Ajax se debe añadir este script justo antes de la referencia de script de jQuery Mobile:

<script language="javascript" type="text/javascript"> 
     $(document).bind('mobileinit', function() { 

      $.mobile.ajaxEnabled = false; 
     }); 
</script> 

Redirigir a una URL externa no funciona si no se utiliza Ajax.
Pero debe haber una alternativa donde no necesite deshabilitar Ajax.

+0

Pensé que lo había intentado (sin suerte), pero puede haber tenido la ubicación incorrecta del guión. Lo probaré más tarde hoy. Gracias – joshb

1

que tenían el mismo problema y fue capaz de iniciar sesión después de añadir rel = "external" para el enlace de conexión, consulte el ejemplo siguiente

<a href="/authentication/logon" rel="external" data-icon="gear" class="ui-btn-right">Login</a> 

No estoy seguro si esto es la solución que está ¿buscando?

+0

Muchas gracias, esto me estaba causando un gran problema – pescamillam

Cuestiones relacionadas