2010-11-22 14 views
5

Usando el complemento Uploadify que usa jQuery y SWF. Algunos servidores web funcionan, otros no. Parece obtener un HTTP 401 no autorizado cuando se intenta cargar. Podría estar relacionado con SWF. En Fiddler, cuando no funciona, parece obtener este Proxy-Support: Autenticación basada en sesión, pero cuando funciona, no obtenemos la Autenticación basada en sesión. ¿Es esto un problema de enrutamiento de red? ¿Problema de Proxy? ¿Alguna sugerencia sobre soluciónUploadify y HTTP 401 desafíos. ¿Por qué no funciona de manera consistente?

HTTP/1.1 401 Unauthorized 
Date: Mon, 22 Nov 2010 22:20:45 GMT 
Server: Microsoft-IIS/6.0 
WWW-Authenticate: Negotiate 
WWW-Authenticate: NTLM 
X-Powered-By: ASP.NET 
X-AspNet-Version: 2.0.50727 
Cache-Control: private 
Content-Type: text/html; charset=utf-8 
Content-Length: 1697 

Proxy-Support: Session-Based-Authentication

+0

Parece que la mejor solución es no utilizar Uploadify, tan agradable como una interfaz como es. Pero si no hay flash, entonces perdemos la capacidad de subir varios archivos a la vez. ¿Algún otro plugin jQuery que no sea SWF y que cualquiera pueda recomendar? – Shane

Respuesta

6

Para cualquiera que desee utilizar el complemento Uploadify con Autenticación de Windows. No lo hagas No solo Uploadify, sino cualquiera de ellos que usa archivos Flash. Pruebe con otro complemento en su lugar. Usamos este y funcionó muy bien, sin problemas. No usa ningún Flash.

http://valums.com/ajax-upload/

3

Uploadify utiliza Flash para subir. Creo que el problema aquí está relacionado con un error en Flash que hace que Uploadify use una sesión separada. Aunque la sesión del usuario está autorizada para cargar, esa autorización no se extiende a la sesión de Uploadify.

Una solución a esto es el problema de hacer su propia autenticación personalizada para cargar. Podría considerar emitir un tipo de token de acceso para el usuario que se pueda pasar como un parámetro para Uploadify y que se transfiera al cargar archivos.

+1

Estoy de acuerdo con el párrafo 1, pero estoy totalmente en desacuerdo con el párrafo 2 :) Normalmente, es suficiente con pasar la ID de sesión correcta manualmente en las opciones del cargador. (Volveré a votar cuando tenga votos otra vez) –

+0

Por lo tanto, según tengo entendido, el problema es un error en los archivos SWF que no siempre llevan correctamente los encabezados de autenticación, así que podrías crear una página aspx que devuelva el tipo de contenido de shockwave flash y hacer una Response.BinaryWrite para obtener el archivo. Tal vez eso lo sostendría. No es seguro. – Shane

+0

@Pekka: Eso suena como una buena solución. Mi primer intento cuando me encontré con este problema implicó pasar la ID de la sesión y cambiar la sesión de Uploadify real antes de que se procesara la solicitud. Sin embargo, planteó un par de otros problemas, así que terminé guardando el ID de la sesión del usuario en la base de datos como un "token" y pasándolo junto con la solicitud Uploadify. –

1

me encontré con este problema recientemente.

En mi caso estaba usando IIS con la autenticación de Windows habilitada (sin acceso anónimo). Esto impidió que Flash cargara archivos porque ejecutó el proceso de carga como una sesión separada no autenticada. Para resolver, solo permití el acceso anónimo en los archivos del manejador y la carga ahora funciona muy bien.

+0

¿Puedes por favor elaborar y darme los pasos? Estoy teniendo el mismo problema. –

Cuestiones relacionadas