Qu'est-ce que le format de fichier ASHX ?
L'extension .ashx identifie un gestionnaire HTTP générique ASP.NET - un composant côté serveur développé par Microsoft. Contrairement à une page ASP.NET standard, un gestionnaire .ashx traite directement les requêtes HTTP et diffuse une réponse (données binaires, JSON, images ou fichiers) sans la surcharge de rendu de page complète d'une page .aspx classique.
Un véritable fichier source .ashx est en texte brut. Il commence par une ligne de directive telle que <%@ WebHandler Language="C#" Class="MyHandler" %>, suivie d'une classe implémentant l'interface IHttpHandler. Le code à l'intérieur est écrit en C# ou VB.NET ; le volume est souvent relativement faible, car les gestionnaires sont conçus pour une tâche unique.
Les fichiers .ashx peuvent apparaître de manière inattendue lors d'une tentative de téléchargement d'un fichier à partir d'un site web. Cela se produit lorsqu'un gestionnaire servant le fichier - une image, un document PDF ou une autre ressource - ne définit pas l'en-tête Content-Disposition correct, de sorte que le navigateur enregistre la réponse avec un suffixe .ashx au lieu de l'extension prévue.
Pour récupérer un tel fichier, vous pouvez utiliser une astuce simple : renommez-le en changeant .ashx par l'extension correcte (par exemple, .pdf pour un document PDF, ou .jpg pour une image), puis essayez de l'ouvrir avec n'importe quelle application prenant en charge ce format. La même méthode s'applique à d'autres types de fichiers - changez simplement l'extension par la bonne et ouvrez le fichier avec un programme compatible.
Sécurité et sûreté
RISQUE : LOWL'extension .ashx en elle-même ne dit rien sur la sécurité - dans une URL, c'est juste un point de terminaison d'un site web normal ; traitez le site comme n'importe quel autre (attention au phishing sur les pages de connexion). Un téléchargement arrivé sous le nom .ashx est généralement le fichier réel (PDF, image) avec le mauvais nom et peut être renommé et ouvert en toute sécurité. Soyez prudent uniquement avec les téléchargements .ashx inattendus provenant de sources non fiables - inspectez-les en tant que texte ou par leur type réel avant de les ouvrir, et n'exécutez jamais rien de ce qu'ils tentent de lancer.
Détails du format
en brefProgrammes qui ouvrent les fichiers ASHX
Détails techniques
spécifications approfondies| Développeur | Microsoft |
| Plateforme | ASP.NET (.NET Framework ; également pris en charge en mode de compatibilité précoce ASP.NET Core) |
| Contenu du fichier | Texte brut ; s'ouvre par une directive `<%@ WebHandler %>` suivie d'un corps de classe C# ou VB.NET |
| Interface implémentée | `IHttpHandler` (synchrone) ou `IHttpAsyncHandler` (opérations asynchrones) |
| Syntaxe de la directive | `<%@ WebHandler Language="C#" Class="ClassName" %>` |
| Langages pris en charge | C# et VB.NET |
| Type MIME par défaut | `text/html` ; le gestionnaire remplace cela en définissant `context.Response.ContentType` avant d'écrire la sortie |
| Modèle d'accès URL | Invoqué directement comme un point de terminaison URL (ex: `download.ashx?id=1`) ; n'est pas une page de navigateur rendue |
| Enregistrement sur le serveur | Mappé dans `web.config` ou les mappages de gestionnaires IIS ; le runtime ASP.NET route les requêtes correspondantes vers la classe du gestionnaire |
| Signature binaire | Aucune - fichier texte brut sans octets magiques ; les fichiers sources sont identifiables uniquement par la ligne de directive d'ouverture |
| État de session | Désactivé par défaut ; activé en implémentant `IRequiresSessionState` sur la classe du gestionnaire |
| Utilisations courantes | Téléchargements de fichiers, génération d'images dynamiques, points de terminaison AJAX/JSON, diffusion de données binaires ou textuelles |
| Remplacement moderne | Le middleware ASP.NET Core, les Minimal APIs et les extensions `IEndpointRouteBuilder` remplacent `.ashx` dans .NET 5 et versions ultérieures |
| Comportement de l'artefact de téléchargement | Les navigateurs enregistrent `.ashx` comme suffixe de fichier lorsqu'un gestionnaire omet `Content-Disposition` ; le renommage vers l'extension réelle (`.pdf`, `.jpg`, etc.) récupère le fichier |
| Publié | 2002 (ASP.NET 1.0, .NET Framework) |
| Spécification | learn.microsoft.com |
Conversions ASHX
Q&R de la communauté
posées par les utilisateursPas encore de questions - soyez le premier à poser une question sur les fichiers ASHX.