Pergunta

Eu estou usando Uploadify e algo que foi previamente trabalhando agora não é e eu não sei por que. Eu recebo um erro HTTP retornado sempre que eu clicar em upload. Observando o guia net no Firefox, ele não se parece com ele é mesmo enviar nada para o servidor novamente.

Eu tentei colocar na função de erro para ajudar a depurar mas o atributo de status é indefinido ..

$("#fileInput").uploadify({
                'uploader': '/scripts/upload/uploadify.swf',
                'script': '/Member/UploadImages/PerformUpload',
                'cancelImg': '/scripts/upload/cancel.png',    
                'multi': true,
                'simUploadLimit': 1,
                'fileDesc': "Images",
                'fileExt': "*.jpg;*. jpeg;*.bmp;*.png",
                'sizeLimit': 3000000,
                'onAllComplete':showFinishedLink,
                'onError': function (event, queueID ,fileObj, errorObj) {
                    var msg;
                    if (errorObj.status == 404) {
                       alert('Could not find upload script. Use a path relative to: '+'<?= getcwd() ?>');
                       msg = 'Could not find upload script.';
                    } else if (errorObj.type === "HTTP")
                       msg = errorObj.type+": "+errorObj.status;
                    else if (errorObj.type ==="File Size")
                       msg = fileObj.name+'<br>'+errorObj.type+' Limit: '+Math.round(errorObj.sizeLimit/1024)+'KB';
                    else
                       msg = errorObj.type+": "+errorObj.text;
                    alert(msg);
                    $("#fileUpload" + queueID).fadeOut(250, function() { $("#fileUpload" + queueID).remove()});
                    return false;
                    },
            });

Todas as idéias?

Foi útil?

Solução

OK, descobri que o erro de depuração que eu estava usando era velho e que eu posso dizer errorObj.info para sair a informação mais detalhada sobre por que ele não está funcionando.

Essa e acontece que é um 404 que significa que o script que eu estou tentando POST para não ser pego mesmo que existe. Soa como um problema de roteamento ...

Caso encerrado!

Só para acrescentar mais informações sobre este - o 404 foi o resultado de um antigo url login padrão no arquivo web.config.

Uma vez que eu reparei isso, o 404, em seguida, tornou-se um 302 (olhando para os logs do IIS) como o local estava me redirecionando para a página de login.

O meu script de upload está em uma área autenticada do site e então eu precisava usar algo que é descrito neste site

Usando flash com aspnet mvc

Outras dicas

Eu estava recebendo um erro 302 ocorrendo apenas no Firefox / Chrome: IE8 funcionou bem. O problema acabou por ser que Netscape estava agora enviando auth biscoitos com a sua postagem arquivo. Eu permiti que o arquivo .ashx que movimentou o envio de uma autorização anônima no config web, e não tinha mais problemas.

<location path="UploadifyUploadHandler.ashx">
  <system.web>
    <authorization>
      <allow users="?"/>
    </authorization>
  </system.web>
</location>
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top