【问题标题】:LinkedIn Api Callback expires session [closed]LinkedIn Api回调到期会话[关闭]
【发布时间】:2015-02-11 01:59:14
【问题描述】:

我在会话中有 TYPE,例如Session["TYPE"].
我访问LinkedIn Api 以获取LinkedIn 用户资料,但在LinkedIn Api 中进行身份验证后,当Redirect URL 被回调时,我的会话已过期,这意味着现在Session["TYPE"] 为空。

同样的过程在我的开发服务器上运行良好,没有会话过期问题,但是当我将它部署到实时服务器上时,就会出现这个问题。

用户从LinkedIn重定向后,为什么会话状态过期或清除?

【问题讨论】:

    标签: asp.net asp.net-mvc-4 session linkedin


    【解决方案1】:

    您是否被重定向到相同的域名?

    会话状态使用 cookie 在网络浏览器中保留唯一标识符。在领英接受访问后,您将被重定向到您的应用。如您所知,cookie 仅适用于一个域。如果域名不同,则会话 cookie 不存在并且您的会话变量未加载。

    【讨论】:

    • 是的,我被重定向到同一个域名。
    • 好吧,SandRock 你已经做到了。如果我的重定向 URL 是 www 说“www.google.com”,那么问题是“www”,它可以正常工作。但是,如果我的重定向 URL 没有 www 说“google.com”,它会将其理解为新域,因此那里没有会话 cookie。所以我把你的回复标记为答案。谢谢
    【解决方案2】:

    可能会话状态模块在您的生产环境中被禁用或配置错误?

    验证 sessionState 已在您的 Web.config 中启用和配置。

    <system.web>
      <sessionState cookieless="UseCookies" timeout="20"
                    cookieName="sessionState" mode="InProc" />
    </system.web>
    

    【讨论】:

    • 我在 web.config 中添加了上面的行,但结果相同。当从linkedin api重定向回我的应用程序会话时已过期。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多