Hva er ASHX-filformatet?
Filtypen .ashx identifiserer en ASP.NET Generic HTTP Handler - en serverside-komponent utviklet av Microsoft. Til forskjell fra en standard ASP.NET-side, behandler en .ashx-håndterer HTTP-forespørsler direkte og strømmer et svar (binærdata, JSON, bilder eller filer) uten ressursbruken som kreves for full sidegjengivelse i en vanlig .aspx-side.
En ekte .ashx-kildefil er ren tekst. Den starter med en direktivlinje som <%@ WebHandler Language="C#" Class="MyHandler" %>, etterfulgt av en klasse som implementerer grensesnittet IHttpHandler. Koden inni er skrevet i C# eller VB.NET; omfanget er ofte relativt lite, siden håndterere er spesialbygd for én enkelt oppgave.
.ashx-filer kan dukke opp uventet når du prøver å laste ned en fil fra et nettsted. Dette skjer når en håndterer som leverer filen - et bilde, et PDF-dokument eller en annen ressurs - ikke angir riktig Content-Disposition-header, slik at nettleseren lagrer svaret med et .ashx-suffiks i stedet for den tiltenkte filtypen.
For å gjenopprette en slik fil kan du bruke et enkelt triks: Gi den nytt navn ved å endre .ashx til riktig filtype (for eksempel .pdf for et PDF-dokument, eller .jpg for et bilde), og prøv deretter å åpne den med et program som støtter det formatet. Samme metode gjelder for andre filtyper - bare endre filtypen til den riktige og åpne filen med et program som støtter det gitte formatet.
Sikkerhet og trygghet
RISIKO: LOWFiltypen .ashx i seg selv sier ingenting om sikkerhet - i en URL er det bare et endepunkt for et vanlig nettsted; behandle nettstedet som du ville gjort med alle andre (se opp for phishing på påloggingssider). En nedlasting som kom som .ashx er vanligvis den ekte filen (PDF, bilde) med feil navn, og er trygg å gi nytt navn og åpne. Vær kun forsiktig med uventede .ashx-nedlastinger fra upålitelige kilder - inspiser dem som tekst eller etter deres virkelige type før åpning, og kjør aldri noe de prøver å starte.
Formatdetaljer
i et nøtteskallProgrammer som åpner ASHX-filer
Tekniske detaljer
dyp spesifikasjon| Utvikler | Microsoft |
| Plattform | ASP.NET (.NET Framework; også støttet i tidlig ASP.NET Core-kompatibilitetsmodus) |
| Filinnhold | Ren tekst; starter med et `<%@ WebHandler %>`-direktiv etterfulgt av en C#- eller VB.NET-klasse |
| Implementert grensesnitt | `IHttpHandler` (synkron) eller `IHttpAsyncHandler` (asynkrone operasjoner) |
| Direktiv-syntaks | `<%@ WebHandler Language="C#" Class="ClassName" %>` |
| Støttede språk | C# og VB.NET |
| Standard MIME-type | `text/html`; håndtereren overstyrer dette ved å angi `context.Response.ContentType` før utdata skrives |
| URL-tilgangsmønster | Kalles direkte som et URL-endepunkt (f.eks. `download.ashx?id=1`); ikke en gjengitt nettleserside |
| Serverregistrering | Mappet i `web.config` eller IIS-håndteringsregler; ASP.NET-kjøretidsmiljøet ruter samsvarende forespørsler til håndteringsklassen |
| Binær signatur | Ingen - ren tekstfil uten magic bytes; kildefiler kan kun identifiseres ved den innledende direktivlinjen |
| Sesjonstilstand | Deaktivert som standard; aktiveres ved å implementere `IRequiresSessionState` i håndteringsklassen |
| Vanlige bruksområder | Filnedlastinger, dynamisk bildegenerering, AJAX/JSON-endepunkter, strømming av binær- eller tekstdata |
| Moderne erstatning | ASP.NET Core-mellomvare, Minimal APIs og `IEndpointRouteBuilder`-utvidelser erstatter `.ashx` i .NET 5 og nyere |
| Oppførsel ved nedlastingsfeil | Nettlesere lagrer `.ashx` som filendelse når en håndterer utelater `Content-Disposition`; endring av navn til den virkelige filtypen (`.pdf`, `.jpg`, osv.) gjenoppretter filen |
| Utgitt | 2002 (ASP.NET 1.0, .NET Framework) |
| Spesifikasjon | learn.microsoft.com |
ASHX-konverteringer
Spørsmål og svar fra fellesskapet
spurt av brukereIngen spørsmål ennå - vær den første til å spørre om ASHX-filer.