【问题标题】:ASP.NET Random string showing up in URLASP.NET 随机字符串显示在 URL 中
【发布时间】:2023-03-15 20:05:01
【问题描述】:

我正在使用 Asp.Net 4.5 (VS2012) 和 Telerik Ajax 控件开发网站。我正在使用 Telerik Schedular、Grid、AjaxPanel 等。

项目编译良好。当我从 VS 运行它时,它会显示这样的 URL

http://localhost:23482/default.aspx

然后突然在 URL 之间插入了一些随机字符串。它看起来像下面这样有点连线

"http://localhost:23482/(S(hchi1ir5xii2dy1cjgpghqx3))/default.aspx"

"http://localhost:23482/(S(mgxsfl3rnxnbx2y24i12nowe))/default.aspx"

"http://localhost:23482/(S(sc2hyowh0f2xidnx1zptgaqd))/default.aspx"

我也尝试从 IIS 作为网站运行它。不走运……同样的问题。

注意:即使 URL 中包含随机字符串,该网站仍然可以正常工作。

谁能给我一些建议?|

谢谢

【问题讨论】:

    标签: c# asp.net telerik localhost


    【解决方案1】:

    默认情况下,SessionId 存储在 cookie 中,但您可以通过将此行写入 web.config 来使用无 cookie 会话

      <system.web>
        <sessionState cookieless="true"
             />
         </system.web>
    

    您可以从 webconfig 中删除该行以删除 (S(hchi1ir5xii2dy1cjgpghqx3))

    来自

    "http://localhost:23482/(S(hchi1ir5xii2dy1cjgpghqx3))/default.aspx"
    

    或写入 web.config

    <system.web>
        <sessionState cookieless="false"
              />
      </system.web>
    

    【讨论】:

    • 这仍然在 URL 中显示 sessionid。编辑:哦,好的。我只是设置了 cookieless="False" 并且成功了!
    • 在 web.config 中写入
    • 是的。制作 cookieless="false" 后。问题消失了。有没有必要写 regenerateExpiredSessionId="true" ?
    【解决方案2】:

    好像您正在使用无 cookie 会话

    See this

    【讨论】:

    • 是的,你是对的!谢谢你。 +1 这是我在 Stackoverflow 上得到的最快答案。
    • @HiteshRiziya 你一直在计算答案并给他们奖励?? :)
    • 顺便说一句,你知道吗,如果我们在 Telerik 中使用 cookieLess 会话会有什么不同吗?
    • @HiteshRiziya,我不这么认为,与 Telerik 一起使用 CookieLess 会话应该没有什么区别,但是我没有这样做。
    猜你喜欢
    • 2011-05-13
    • 1970-01-01
    • 2016-04-14
    • 1970-01-01
    • 2011-05-13
    • 1970-01-01
    • 2018-05-08
    • 1970-01-01
    • 2016-09-11
    相关资源
    最近更新 更多