2010-06-18 30 views
5

J'ai un problème étrange où j'ai un HttpHandler ayant son événement ProcessRequest() tirant deux fois.ASP.Net HttpHandler ProcessRequest() tir deux fois

Je n'ai rien d'autre dans la classe sauf un pointeur vers une méthode statique, donc je suis perdu.

Je l'ai fait googling en vain même pensé il semble que quelques personnes ont des problèmes similaires:

code:

public bool IsReusable 
    { 
     get { return true; } 
    } 

    public void ProcessRequest(HttpContext context) 
    { 
     Common.Tracker.TrackPageView(context); 
    } 

Répondre

10

Annulez cette opération.

J'ai testé dans Firefox et cela se produit UNIQUEMENT lorsque j'appelle directement le gestionnaire.

Si le gestionnaire est configuré en tant que src d'image, cela ne se produit pas.

en outre cela ne se produit pas - c'est firefox seulement. J'ai pensé qu'il pourrait être mes extensions (spécifiquement firebug ou YSLOW), donc je les ai manuellement désactivés un par un et il se passait toujours donc je n'ai aucune idée mais firefox fait deux appels à une page.

peut-être est similaire à ce vieux poste je retourne un fichier GIF comme type de contenu: http://www.hanselman.com/blog/InternetExplorerAndTheMagicOfMicrosoftKBArticleQ293792.aspx

espoir que cela aide quelqu'un comme c'est deux ou trois heures, je ne serai jamais de retour ...

+0

Merci, cela m'a aidé à ne pas devenir fou. Autant que j'aime FF, ça fait parfois des trucs bizarres. – Kon

+0

J'ai le même problème mais c'est en chrome, je veux que mon gestionnaire soit tiré quand je l'appelle pas quand la page se charge..une idée comment puis-je le faire plz – Armance

+0

Que voulez-vous dire par "gestionnaire mis en place comme une image src "pouvez-vous élaborer s'il vous plaît? Essayer de résoudre un problème similaire. –

1

Il semble que vous essayez de suivre une vue page; Est-ce que quelque chose sur le client pourrait faire que la page/gestionnaire soit appelée deux fois? J'ai vu un comportement similaire dans le passé lorsque le code HTML envoyé au navigateur contenait une balise img sans l'attribut src. Cela s'est seulement produit dans FireFox, mais provoquait l'appel de la page deux fois. Suggestions: Voir s'il y a des images sans tags src; Utilisez Fiddler ou FireBug pour inspecter le trafic http et assurez-vous de ne pas appeler le gestionnaire deux fois par inadvertance. Plus de détails seraient également utiles. J'espère que cela t'aides.

+0

J'appelle directement le gestionnaire. J'ai l'intention de l'afficher comme un pixel de suivi, mais je n'ai pas été aussi loin. Je l'appelle simplement dans un navigateur. il diffuse ensuite un fichier gif dans le navigateur. cela fonctionne bien, il tire juste la méthode deux fois ?? – Doug

1

Peut-être que le navigateur essayait d'obtenir une favicon?