【问题标题】:How to remove cookies,session ID's in redirected URL?如何删除重定向 URL 中的 cookie、会话 ID?
【发布时间】:2012-08-15 16:00:01
【问题描述】:

我通过HttpWebRequest()HttpWebResponse() 方法传递了一个链接,我得到了包含一些cookie(会话ID)的最终响应网址。

例如对于这个链接http://www.1and1.com/

我收到以下响应网址: http://www.1and1.com/;jsessionid=D94CEA91011FDF30CCA8A8EAC8CE4971.TCpfix243a

当我在浏览器中打开http://www.1and1.com/ 时,浏览器地址栏中的链接不包含此会话ID 值。

如何从上述响应 url 中删除 session id 和 cookie 值?

请帮我搞定,谢谢。

【问题讨论】:

    标签: c# httpwebrequest httpwebresponse http-redirect


    【解决方案1】:

    您需要在 web.config 中适当地配置 sesseionState 部分的 cookieless 属性。根据MSDN

    对于允许不支持 cookie 的客户端的应用程序,例如 作为各种移动设备,会话 ID 可能存储在 网址。 URL 选项有几个缺点。它要求链接 在网站上是相对的,并且页面被重定向到 使用新的查询字符串值开始会话,它公开 查询字符串中的会话 ID,可以在其中获取 用于安全攻击。

    我们鼓励您仅在需要时使用无 cookie 模式 支持缺少 cookie 支持的客户端。

    会话状态还支持两个附加选项:UseDeviceProfile 和自动检测。前者使会话状态模块能够 确定在每个客户端上使用什么模式(cookie 或无cookie) 基于浏览器功能。自动检测选项 与浏览器握手以验证 cookie 是否可以 被存储,因此需要一个额外的请求来使 决心。如果您需要支持无cookie客户端,强烈 考虑使用 UseDeviceProfile 仅为 需要它们的客户。

    【讨论】:

    • 我在 C# 中使用窗口窗体,所以我的程序中没有使用 web.config 文件。你能告诉我如何以编程方式制作 cookieless 吗?
    猜你喜欢
    • 2010-11-08
    • 2022-01-03
    • 2012-09-01
    • 2012-08-29
    • 1970-01-01
    • 1970-01-01
    • 2013-09-12
    • 2013-08-11
    • 1970-01-01
    相关资源
    最近更新 更多