O que é o formato de ficheiro ASHX?
A extensão .ashx identifica um Manipulador HTTP Genérico do ASP.NET - um componente do lado do servidor desenvolvido pela Microsoft. Ao contrário de uma página ASP.NET padrão, um manipulador .ashx processa solicitações HTTP diretamente e transmite uma resposta (dados binários, JSON, imagens ou arquivos) sem a sobrecarga total de renderização de página de uma página .aspx comum.
Um arquivo de origem .ashx genuíno é texto simples. Ele começa com uma linha de diretiva como <%@ WebHandler Language="C#" Class="MyHandler" %>, seguida por uma classe que implementa a interface IHttpHandler. O código interno é escrito em C# ou VB.NET; o volume costuma ser relativamente pequeno, já que os manipuladores são construídos especificamente para uma única tarefa.
Arquivos .ashx podem aparecer inesperadamente ao tentar baixar um arquivo de um site. Isso ocorre quando um manipulador que serve o arquivo - uma imagem, um documento PDF ou outro recurso - não define o cabeçalho Content-Disposition correto, fazendo com que o navegador salve a resposta com um sufixo .ashx em vez da extensão pretendida.
Para recuperar tal arquivo, você pode usar um truque simples: renomeie-o alterando .ashx para a extensão correta (por exemplo, .pdf para um documento PDF, ou .jpg para uma imagem) e, em seguida, tente abri-lo com qualquer aplicativo que suporte esse formato. O mesmo método se aplica a outros tipos de arquivo - basta alterar a extensão para a adequada e abrir o arquivo com um programa que suporte o formato fornecido.
Segurança e proteção
RISCO: LOWA extensão .ashx por si só não diz nada sobre segurança - em uma URL, é apenas um endpoint de um site normal; trate o site como faria com qualquer outro (cuidado com phishing em páginas de login). Um download que chegou como .ashx é normalmente o arquivo real (PDF, imagem) com o nome errado e é seguro renomear e abrir. Tenha cautela apenas com downloads .ashx inesperados de fontes não confiáveis - inspecione-os como texto ou por seu tipo real antes de abrir, e nunca execute nada que eles tentem iniciar.
Detalhes do formato
em resumoProgramas que abrem arquivos ASHX
Detalhes técnicos
especificação profunda| Desenvolvedor | Microsoft |
| Plataforma | ASP.NET (.NET Framework; também suportado no modo de compatibilidade inicial do ASP.NET Core) |
| Conteúdo do arquivo | Texto simples; abre com uma diretiva `<%@ WebHandler %>` seguida por um corpo de classe C# ou VB.NET |
| Interface implementada | `IHttpHandler` (síncrona) ou `IHttpAsyncHandler` (operações assíncronas) |
| Sintaxe da diretiva | `%@ WebHandler Language="C#" Class="ClassName" %>` |
| Linguagens suportadas | C# e VB.NET |
| Tipo MIME padrão | `text/html`; o manipulador substitui isso definindo `context.Response.ContentType` antes de gravar a saída |
| Padrão de acesso à URL | Invocado diretamente como um endpoint de URL (ex: `download.ashx?id=1`); não é uma página de navegador renderizada |
| Registro no servidor | Mapeado no `web.config` ou mapeamentos de manipulador do IIS; o tempo de execução do ASP.NET roteia solicitações correspondentes para a classe do manipulador |
| Assinatura binária | Nenhuma - arquivo de texto simples sem magic bytes; arquivos de origem são identificáveis apenas pela linha de diretiva de abertura |
| Estado da sessão | Desabilitado por padrão; habilitado ao implementar `IRequiresSessionState` na classe do manipulador |
| Usos comuns | Downloads de arquivos, geração dinâmica de imagens, endpoints AJAX/JSON, streaming de dados binários ou de texto |
| Substituto moderno | Middleware do ASP.NET Core, Minimal APIs e extensões `IEndpointRouteBuilder` substituem o `.ashx` no .NET 5 e versões posteriores |
| Comportamento de artefato de download | Os navegadores salvam `.ashx` como o sufixo do arquivo quando um manipulador omite `Content-Disposition`; renomear para a extensão real (`.pdf`, `.jpg`, etc.) recupera o arquivo |
| Lançado | 2002 (ASP.NET 1.0, .NET Framework) |
| Especificação | learn.microsoft.com |
Conversões de ASHX
Perguntas e Respostas da Comunidade
perguntado por usuáriosAinda não há perguntas - seja o primeiro a perguntar sobre arquivos ASHX.