Was ist eine .axd-Datei?

102

Welchen Zweck erfüllen .axdDateien?

Ich weiß, dass es im ASP.Net AJAX Toolkit und seinen Steuerelementen verwendet wird. Ich würde gerne mehr darüber wissen.

Ich habe versucht, dafür zu googeln, konnte aber keine grundlegenden Informationen finden.

Sikender
quelle
Hat jemand eine Dokumentation darüber, wie man sie herstellt oder verwendet?
Owen Johnson

Antworten:

86

von Google

Eine .axd-Datei ist eine HTTP-Handler-Datei. Es gibt zwei Arten von .axd-Dateien.

  1. ScriptResource.axd
  2. WebResource.axd

Dies sind Dateien, die zur Laufzeit generiert werden, wenn Sie ScriptManager in Ihrer Web-App verwenden. Dies wird nur einmal generiert, wenn Sie es auf dem Server bereitstellen.

Einfach ausgedrückt: ScriptResource.AXD enthält alle clientseitigen Javascript-Routinen für Ajax. Nur weil Sie einen Skriptmanager einschließen, der eine Skriptdatei lädt, wird diese niemals als ScriptResource.AXD angezeigt. Stattdessen wird sie lediglich als die von Ihnen gesendete .js-Datei übergeben, wenn Sie auf eine externe Skriptdatei verweisen. Wenn Sie es in Code einbetten, wird es möglicherweise nur als Teil des HTML-Codes als Tag und Code angezeigt. Je nachdem, wie Sie mit dem ToolKit umgehen, wird es möglicherweise als ScriptResource.axd angezeigt oder nicht. ScriptResource.axd wird nur mit AJAX eingeführt und wird an keiner anderen Stelle angezeigt

Und natürlich ist es notwendig

kobe
quelle
2
Es handelt sich um serverseitige Dateien, die Ressourcen für die WebResource.axd?d=SbXSD3uTnhYsK4gMD8fL84_mH.....css- und .js-Dateien des Clients rendern. Sie sind statisch
Magnus
Vielleicht bekomme ich manchmal Fehler wie Dies ist eine ungültige Skriptressourcenanforderung. at System.Web.Handlers.ScriptResourceHandler.ProcessRequestWeitere Informationen: ServerVariables_PATH_INFO /v2/ScriptResource.axd
Kiquenet
69

Dies sind keine Dateien (sie existieren nicht auf der Festplatte) - es sind nur Namen, unter denen einige HTTP-Handler registriert sind. Sehen Sie sich web.configdas Verzeichnis in .NET Framework an (z. B. C:\Windows\Microsoft.NET\Framework\v4.0.30319\Config\web.config):

<configuration>
  <system.web>
    <httpHandlers>
      <add path="eurl.axd" verb="*" type="System.Web.HttpNotFoundHandler" validate="True" />
      <add path="trace.axd" verb="*" type="System.Web.Handlers.TraceHandler" validate="True" />
      <add path="WebResource.axd" verb="GET" type="System.Web.Handlers.AssemblyResourceLoader" validate="True" />
      <add verb="*" path="*_AppService.axd" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" validate="False" />
      <add verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" validate="False"/>
      <add path="*.axd" verb="*" type="System.Web.HttpNotFoundHandler" validate="True" />
    </httpHandlers>
  </system.web>
<configuration>

Sie können Ihre eigenen Handler mit einem whatever.axdNamen in Ihrer Anwendung registrieren web.config. Sie können Ihre Handler zwar an beliebige Namen binden, haben .axdjedoch den Vorteil, dass Sie standardmäßig sofort an IIS6 arbeiten können (IIS6 übergibt Anforderungen standardmäßig *.axdan die ASP.NET-Laufzeit). Die Verwendung eines beliebigen Pfads für den Handler wie Document.pdf(oder wirklich alles außer ASP.NET-spezifischen Erweiterungen) erfordert mehr Konfigurationsarbeit. In IIS7 im integrierten Pipeline-Modus ist dies kein Problem mehr, da alle Anforderungen vom ASP.NET-Stack verarbeitet werden.

Jakub Januszkiewicz
quelle
0

Eine AXD-Datei ist eine Datei, die von ASP.NET-Anwendungen zur Verarbeitung eingebetteter Ressourcenanforderungen verwendet wird. Es enthält Anweisungen für retrieving embedded resources, such as images, JavaScript (.JS) files, and.CSS files.AXD-Dateien, die zum Einfügen von Ressourcen in die clientseitige Webseite und zum standardmäßigen Zugriff auf diese auf dem Server verwendet werden.

Sunil Dhappadhule
quelle