J'ai une page web (asp.net) qui compile un paquet puis redirige l'utilisateur vers le fichier de téléchargement via javascript (window.location = ....). Ceci est accompagné d'un lien physique sur la page au cas où la redirection ne fonctionnerait pas - émulant le processus de téléchargement sur de nombreux sites populaires. Lorsque la barre d'informations IE apparaît en haut à cause des paramètres de sécurité restreints et qu'un utilisateur clique dessus pour télécharger le fichier, il redirige l'utilisateur vers la page, pas le fichier de téléchargement, qui actualise la page et supprime le lien dur.Barre d'information IE, télécharger le fichier ... comment puis-je coder pour cela?
Que fait la barre d'information ici? Ne devrait-il pas envoyer l'utilisateur à l'emplacement de la redirection? Est-ce que je mets quelque chose de mal dans les en-têtes de la réponse au téléchargement, ou si je fais quelque chose de mal pour envoyer le fichier en premier lieu?
C# Code:
m_context.Response.Buffer = false;
m_context.Response.ContentType = "application/zip";
m_context.Response.AddHeader("Content-Length", fs.Length.ToString());
m_context.Response.AddHeader("Content-Disposition", string.Format("attachment; filename={0}_{1}.zip", downloadPrefix, DateTime.Now.ToString("yyyy-MM-dd_HH-mm")));
//send the file
Il est difficile d'aider ici sans plus de code ... la redirection JS, le balisage de la page, et le reste du code pour publier le fichier zip serait utile. –