Ho lo stesso problema e non riesco a offrire una buona soluzione (oltre a ciò che suggerisce Tood, che è un'opzione). Ma guardando la situazione con il violinista & co., Ho altre informazioni che potrebbero essere d'aiuto.
La nostra applicazione sta creando documenti PDF al volo e li offre come download. Il problema è chiaramente dipendente dai dati, il che significa che alcuni file generati scaricano bene al primo tentativo, mentre altri richiedono ripetutamente il tentativo.
Fiddler mostra le risposte del server per essere identiche su ogni accesso, per quanto posso dire. Le richieste divergono invece (campioni leggermente modificati):
Prima richiesta:
GET http://localhost:12345/Item/PDF/id HTTP/1.1
Accept: text/html, application/xhtml+xml, */*
Referer: ...
Accept-Language: ...
User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)
Accept-Encoding: gzip, deflate
Host: localhost:12345
Connection: Keep-Alive
Cookie: ASP.NET_SessionId=52znkt1fcisrolj44tnuyzu4
Seconda richiesta:
GET http://localhost:12345/Item/PDF/id HTTP/1.1
Accept: */*
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)
Host: localhost:12345
Connection: Keep-Alive
Cookie: ASP.NET_SessionId=52znkt1fcisrolj44tnuyzu4
nota, come la seconda richiesta riduce il 'Accept:' intestazione da solo */*
. La ragione per cui sono riluttante ad aggiungere un'estensione di file all'URL è che il nome del download suggerito è generato dai dati dell'articolo, inviati con la risposta e altrimenti totalmente estranei all'ID.
quale versione di IE? – Joe
Ho aggiornato la domanda. –
Installa il fiddler e fallo funzionare quando esegui la prima richiesta. Sarai in grado di ispezionare la risposta proveniente dal server. Forse questo farà luce sul problema. http://www.fiddler2.com/fiddler2/ – Joe