J'utilise ASP.Net et l'authentification par formulaire. Lorsqu'un utilisateur est dirigé vers la page de connexion, j'obtiens une erreur JavaScript :
Message : Erreur de syntaxe Li Code : [ ] http://localhost:49791/login.aspx?ReturnUrl=%2fWebImageButton.js
En effet, j'utilise un bouton d'image personnalisé dans un contrôle de projet de contrôle Web distinct qui ajoute une référence de script à la page :
public class WebImageButton : LinkButton, IScriptControl, IButtonControl
{
protected override void OnPreRender(EventArgs e)
{
// Link the script up with the script manager
ScriptManager scriptManager = ScriptManager.GetCurrent(this.Page);
if (scriptManager != null)
{
scriptManager.RegisterScriptControl(this);
scriptManager.Scripts.Add(new ScriptReference("<snip>.WebImageButton.js", "<snip>"));
}
base.OnPreRender(e);
}
}
Si j'ajoute la règle suivante dans mon Web.Config, le fichier est importé avec succès :
<location path="WebImageButton.js">
<system.web>
<authorization>
<allow users="*" />
</authorization>
</system.web>
</location>
Ce n'est pas très bon car j'ai un certain nombre de contrôles personnalisés qui font la même chose, et je n'ai pas particulièrement envie d'authentifier chacun de leurs fichiers js individuellement.
N'y a-t-il aucun moyen de déclarer que toutes les références script importées doivent être autorisées ? J'ai essayé d'autoriser le fichier WebResource.axd au cas où il le permettrait, mais la page elle-même (lorsqu'elle est rendue) fait physiquement référence au fichier WebImageButton.js.
Le scénario idéal serait le suivant :
<location path="My.WebControlLibraryProject.Controls">
<system.web>
<authorization>
<allow users="*" />
</authorization>
</system.web>
</location>
Existe-t-il un moyen d'y parvenir sans énumérer chaque fichier ?
EDIT : Pour être clair, ces fichiers script se trouvent dans un autre projet et non dans mon projet web actuel. Je sais comment déclarer les chemins d'accès aux répertoires pour inclure un grand nombre de fichiers en une seule fois, mais je n'arrive pas à trouver comment authentifier les références automatiques script, qui proviennent de ressources intégrées.