【问题标题】:delay in finding facebook cookie using JS + Python使用 JS + Python 查找 facebook cookie 的延迟
【发布时间】:2011-10-27 03:39:54
【问题描述】:

结合使用 GAE、Python 和 JS,我成功地制作了一个连接到 facebooks API 的应用程序。只有一个障碍:在我的应用程序中 - 我检查的第一件事是是否存在 facebook cookie:

cookie = facebook.get_user_from_cookie(self.request.cookies, 
                                       FACEBOOK_APP_ID, 
                                       FACEBOOK_APP_SECRET)
if cookie:
    {render index.html}

else:
    {render login.html}

在我的登录处理程序中,我再次检查 cookie(相同的代码结构)以避免让拥有 cookie 的人访问此页面。这按设计工作。

唯一的问题是,当 cookie 确实存在时,检测它似乎会有一些延迟。所以,日志是:

  • 在 index-handler 中找不到 cookie,正在重定向到 login-handler
  • login-handler 绘制 login-html
  • 在登录处理程序中找到 cookie,重定向到索引处理程序
  • index-handler 绘制 index-html

这对最终用户来说是清晰可见的,登录屏幕绘制,然后,大约一秒钟后,绘制正确的索引屏幕。

造成这种延迟的原因是什么?我想知道如果cookie被传输到服务器,它是否会引起?如果是这样,如何解决这个问题?

【问题讨论】:

    标签: python cookies facebook


    【解决方案1】:

    Cookie fbsr_<application_id> 仅在用户在 Facebook 上通过身份验证、重定向回您的应用程序并使用 cookie: true 执行 Javascript API 方法 FB.init() 后才会设置。

    FB.init({
        appId : '<application_id>',
        status : true,
        cookie : true,
        //...
    

    换句话说,cookie 不会在用户被重定向回您的应用程序后立即设置。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-06-01
      • 2020-03-09
      • 2011-03-02
      • 1970-01-01
      • 2015-08-07
      • 2017-06-10
      相关资源
      最近更新 更多