Como apresentar uma caixa de diálogo "Transferência de ficheiros" para um tipo de MIME conhecido

Traduções de Artigos Traduções de Artigos
Artigo: 260519 - Ver produtos para os quais este artigo se aplica.
Expandir tudo | Reduzir tudo

Sumário

Quando disponibiliza um documento a partir de um servidor da Web, poderá pretender pedir imediatamente ao utilizador para guardar o ficheiro directamente no disco respectivo, sem o abrir no browser. Contudo, para tipos de extensões de correio da Internet de múltiplas finalidades (MIME, Multipurpose Internet Mail Extensions) conhecidos, como o Microsoft Word ("application/ms-word"), o comportamento predefinido é abrir o documento no Internet Explorer.

Pode utilizar o cabeçalho Content-Disposition para substituir este comportamento padrão. O respectivo formato é:
Content-disposition: attachment; filename=fname.ext
				
Este artigo poderá conter hiperligações para conteúdo em inglês (ainda não traduzido).

Mais Informação

O Content-Disposition é uma extensão do protocolo MIME que instrui o agente de utilizador MIME sobre a forma como deve apresentar um ficheiro anexado. O intervalo de valores válidos para Content-Disposition é descrito no RFC (Request for Comment) 1806 (consulte a secção "Referências" deste artigo). Este assunto deste artigo é o "anexo", que instrui um agente de utilizador (neste caso, o Internet Explorer) a guardar um ficheiro no disco em vez de o guardar inline.

Quando o Internet Explorer recebe o cabeçalho, apresenta uma caixa de diálogo Transferência de ficheiros cuja caixa do nome de ficheiro é automaticamente preenchida com o nome do ficheiro especificado no cabeçalho. (Note que este comportamento ocorre por predefinição; não é possível utilizar esta funcionalidade para guardar um documento no computador do utilizador sem lhe pedir uma localização para guardar o mesmo.)

Existem duas formas de utilizar o Internet Explorer para especificar um cabeçalho Content-Disposition para um ficheiro: dinâmica e estaticamente.

Para aplicar o cabeçalho dinamicamente, crie um ficheiro ASP (Active Server Pages) que escreva o documento no browser. Utilize o método Response.AddHeader para adicionar o cabeçalho Content-Disposition. Por exemplo:
Response.AddHeader "content-disposition","attachment; filename=fname.ext"
				
Estão disponíveis instruções sobre como efectuar uma escrita binária de documentos que não sejam de texto no seguinte artigo da base de dados de conhecimento da Microsoft (KB, Microsoft Knowledge Base):
193998 How to read and display binary data in ASP
Esta técnica é ideal quando pretende proteger um documento armazenado no servidor, especialmente um que resida fora da raiz da Web.

Para aplicar o cabeçalho estaticamente, clique com o botão direito do rato no documento, no gestor do IIS, e seleccione Propriedades. Seleccione o separador Cabeçalhos de HTTP e introduza o cabeçalho Content-Disposition. Isto funciona melhor se apenas pretender aplicar o Content-Disposition a alguns ficheiros do sistema e não necessitar de processamento adicional de ASP.

Note que esta solução não funciona no Internet Explorer 4.01 devido a um erro. Para obter informações adicionais, clique no número de artigo que se segue para visualizar o artigo na base de dados de conhecimento da Microsoft (KB, Microsoft Knowledge Base):
182315 FIX: Content-Disposition: Does not force File Download dialog

Referências

Para obter mais informações sobre Content-Disposition, consulte o RFC 1806 no seguinte Web site da IETF (Internet Engineering Task Force):
http://www.ietf.org/rfc/rfc1806.txt
Para obter mais informações sobre como desenvolver soluções baseadas na Web para o Microsoft Internet Explorer, visite os seguintes Web sites da Microsoft:
http://msdn2.microsoft.com/en-us/ie/default.aspx

http://support.microsoft.com/iep

Propriedades

Artigo: 260519 - Última revisão: 25 de dezembro de 2006 - Revisão: 4.1
A informação contida neste artigo aplica-se a:
  • Microsoft Internet Explorer 5.0
  • Microsoft Internet Explorer 5.01
  • Microsoft Internet Explorer 5.5
Palavras-chave: 
kbhowto kbnavigation KB260519
Exclusão de Responsabilidade para Conteúdo sem Suporte na KB
Este artigo foi escrito sobre produtos para os quais a Microsoft já não fornece suporte. Por conseguinte, este artigo é oferecido "tal como está" e deixará de ser actualizado.

Submeter comentários

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com