绝对URL无Cookie

时间:2010-07-05 15:35:31

标签: asp.net redirect cookieless

asp.net中是否有一些方法可以获得无cookie会话的绝对URL?

更新:我需要创建其他新网址。它不是请求的URL。

我使用Response.ApplyAppPathModifier来获取cookie会话的相对URL。

提前,

2 个答案:

答案 0 :(得分:2)

我尝试了Request.RawUrl和Request.Url(及其在立即窗口中的属性) 没有显示设置的额外属性(web.config):

<sesionState cookieless="true" />

在网址中生成。

实施例

  

http://localhost:2677/WebSite1/(S(3abhbgwjg33aqrt3uat2kh4d))/cookielesssessiondetection.aspx

但是,如果您在3abhbgwjg33aqrt3uat2kh4d之后,可以通过以下方式获取:

Session.SessionID

更新后的问题后更新:

我在测试应用程序中添加了一个超链接控件。在后面的代码中,Page_Load,我补充道:

HyperLink1.NavigateUrl = Response.ApplyAppPathModifier("About.aspx");

当我运行该页面时,关于About.aspx的URL将被设置为包含无cookie会话部分。

当我在浏览器中检查渲染的html的来源时,我看到了:

<a id="HyperLink1" href="/WebSite1/(S(3tzgdnmhwxmxqer10d11auuq))/About.aspx">HyperLink</a>

答案 1 :(得分:0)

您是否尝试过Request.Url.ToString()。它应该适合你。 如果您需要的是您网站上另一个页面的网址,那么您可以像这样继续...

String url = new Uri(Context.Request.Url,ResolveUrl(“〜/ ABC.aspx”))。ToString)

我们也有像Request.Url.AbsoluteUri

这样的东西

我希望以上其中一项适合你。