Qu'est-ce qu'un fichier .axd?

102

À quoi .axdservent les fichiers?

Je sais qu'il est utilisé dans la boîte à outils ASP.Net AJAX et ses contrôles. J'aimerais en savoir plus.

J'ai essayé Google pour cela, mais je n'ai pas trouvé les informations de base.

expéditeur
la source
Quelqu'un a-t-il de la documentation sur la façon de les fabriquer ou de les utiliser?
Owen Johnson du

Réponses:

86

de Google

Un fichier .axd est un fichier HTTP Handler. Il existe deux types de fichiers .axd.

  1. ScriptResource.axd
  2. WebResource.axd

Ce sont des fichiers qui sont générés au moment de l'exécution chaque fois que vous utilisez ScriptManager dans votre application Web. Ceci n'est généré qu'une seule fois lorsque vous le déployez sur le serveur.

En termes simples, ScriptResource.AXD contient toutes les routines javascript côté client pour Ajax. Tout simplement parce que vous incluez un gestionnaire de script qui charge un fichier de script, il n'apparaîtra jamais en tant que ScriptResource.AXD - à la place, il sera simplement passé en tant que fichier .js que vous envoyez si vous référencez un fichier de script externe. Si vous l'incorporez dans du code, il peut apparaître simplement comme une partie du code HTML en tant que balise et code, mais selon que vous codez en fonction de la façon dont le ToolKit le gère, il peut ou non apparaître sous la forme d'un ScriptResource.axd. ScriptResource.axd n'est introduit qu'avec AJAX et vous ne le verrez jamais ailleurs

Et bien sûr, il est nécessaire

Kobe
la source
2
Ce sont des fichiers côté serveur qui rendent les ressources au client WebResource.axd?d=SbXSD3uTnhYsK4gMD8fL84_mH.....css et les fichiers .js sont statiques
Magnus
Peut-être que parfois j'obtiens des erreurs comme Ceci est une demande de ressource de script invalide. at System.Web.Handlers.ScriptResourceHandler.ProcessRequestPlus d'informations: ServerVariables_PATH_INFO /v2/ScriptResource.axd
Kiquenet
69

Ce ne sont pas des fichiers (ils n'existent pas sur le disque) - ce ne sont que des noms sous lesquels certains gestionnaires HTTP sont enregistrés. Jetez un œil au web.configrépertoire de .NET Framework (par exemple 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>

Vous pouvez enregistrer vos propres gestionnaires avec un whatever.axdnom dans celui de votre application web.config. Bien que vous puissiez lier vos gestionnaires aux noms de votre choix, il .axda l'avantage de travailler sur IIS6 hors de la boîte par défaut (IIS6 transmet les demandes *.axdau runtime ASP.NET par défaut). L'utilisation d'un chemin arbitraire pour le gestionnaire, comme Document.pdf(ou vraiment n'importe quoi sauf les extensions spécifiques à ASP.NET), nécessite plus de travail de configuration. Dans IIS7 en mode pipeline intégré, ce n'est plus un problème, car toutes les demandes sont traitées par la pile ASP.NET.

Jakub Januszkiewicz
la source
0

Un fichier AXD est un fichier utilisé par les applications ASP.NET pour gérer les demandes de ressources intégrées. Il contient des instructions pour que les retrieving embedded resources, such as images, JavaScript (.JS) files, and.CSS files.fichiers AXD soient utilisés pour injecter des ressources dans la page Web côté client et y accéder sur le serveur de manière standard.

Sunil Dhappadhule
la source