2009-10-09 6 views
1

J'ai une application ASP.Net qui génère une courte URL pour le partage. Je veux suivre l'URL à partir de laquelle le clic (source) s'est produit quand il a atteint ma page asp.net. J'ai essayé d'utiliser Context.Request.UrlReferrer.AbsoluteUri mais tout ce que j'en tire est nul.ASP.NET UrlReferrer

Des idées?

TIA

+0

duplication possible de [Request.UrlReferrer null !?] (http://stackoverflow.com/questions/149130/request-urlreferrer-null) –

Répondre

0

Pas tout à fait aussi propre, mais vous pouvez utiliser Request.Headers [ "Referer"]. Cela devrait être la même chose que d'utiliser Context.Request, mais j'ai trouvé que le comportement était différent.

+0

Context.Request vient de le convertir en URI. Le "referer" dans l'en-tête, selon la spécification (http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.36) pourrait être un URI relatif à l'URI de la demande. Context.Request prend juste soin de cela pour vous, et vous donne un URI pour travailler avec. C'est là que le comportement serait différent. – DanO

1

N'oubliez pas que le référent sera parfois nul pour des choses comme les moteurs de recherche, ou les personnes derrière les pare-feu d'entreprise qui suppriment certains en-têtes HTTP.