Facebook PHP SDK getSession() 无法获取会话.饼干问题?

2023-10-30php开发问题
9

本文介绍了Facebook PHP SDK getSession() 无法获取会话.饼干问题?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

问题描述

背景:

  • 使用 Facebook PHP SDK v 2.1.2
  • cookieSupport = 真
  • Facebook 上的应用启用了适用于 Canvas 的 OAuth 2.0
  • Facebook Connect/登录逻辑通过 https 发生在单独的子域 (secure.mysite.com) 上
  • 开发网站是 dev.mysite.com:PORT_NUM

什么有效

  • 我可以使用 Facebook Connect 成功登录
  • 通过 Facebook 对话框授权后,我们将用户登录,然后重定向到 fbconnect.php,它会实例化 Facebook 类并调用 $facebook->getSession()
  • 这将返回一个有效的 Facebook 会话,然后我们继续执行我们的登录后逻辑
  • 然后我们重定向到登录的主页

什么不起作用

  • 在那之后的任何时候,$facebook->getSession() 都会返回 NULL.无论如何.
  • 根据文档,只要 cookie 有效,Facebook 就应该根据 cookie 重新生成有效会话.持续时间设置为默认值 1 小时,但即使在设置 cookie 后 30 秒完成调用也会失败.

我想知道 fbs_ cookie 中是否存在阻止登录后会话重新生成的内容.与安全子域或我们在开发站点上使用的端口号相关的内容?

I'm wondering if there's something in the fbs_ cookie that's preventing the regeneration of a session post sign-in. Something related to the secure subdomain or possibly the port numbers we use on our dev sites?

据我所见,有很多人在使用 Facebook 会话时遇到类似问题,但我遇到的建议似乎并未解决 fbs_ cookie、域、端口等的内容.我的理解这些事情与 cookie 的关系相对较轻,但我想至少将它们作为非问题检查,以便我可以查看其他地方.

There are a lot of people having similar problems with Facebook sessions from what I've seen, but the suggestions I've come across don't seem to address the content of the fbs_ cookie, domains, ports etc. My understanding of how such things relate to cookies is relatively light, but I'd like to at least check them off as non-issues so I can look elsewhere.

欣赏任何见解.

推荐答案

新的 Facebook PHP SDK (v3) 解决了这个问题

This issue went away with the new Facebook PHP SDK (v3)

这篇关于Facebook PHP SDK getSession() 无法获取会话.饼干问题?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

The End

相关推荐

PHP实现DeepL翻译API调用
DeepL的翻译效果还是很强大的,如果我们要用php实现DeepL翻译调用,该怎么办呢?以下是代码示例,希望能够帮到需要的朋友。 在这里需要注意,这个DeepL的账户和api申请比较难,不支持中国大陆申请,需要拥有香港或者海外信用卡才行,没账号的话,目前某宝可以...
2025-08-20 php开发问题
168

PHP通过phpspreadsheet导入Excel日期数据处理方法
PHP通过phpspreadsheet导入Excel日期,导入系统后,全部变为了4开头的几位数字,这是为什么呢?原因很简单,将Excel的时间设置问文本,我们就能看到该日期本来的数值,上图对应的数值为: 要怎么解决呢?进行数据转换就行,这里可以封装方法,或者用第三方的...
2024-10-23 php开发问题
287

mediatemple - 无法使用 codeigniter 发送电子邮件
mediatemple - can#39;t send email using codeigniter(mediatemple - 无法使用 codeigniter 发送电子邮件)...
2024-08-23 php开发问题
11

Laravel Gmail 配置错误
Laravel Gmail Configuration Error(Laravel Gmail 配置错误)...
2024-08-23 php开发问题
16

将 PHPMailer 用于 SMTP 的问题
Problem with using PHPMailer for SMTP(将 PHPMailer 用于 SMTP 的问题)...
2024-08-23 php开发问题
4

关于如何在 GoDaddy 服务器中使用 PHPMailer 设置 SMTP 的问题
Issue on how to setup SMTP using PHPMailer in GoDaddy server(关于如何在 GoDaddy 服务器中使用 PHPMailer 设置 SMTP 的问题)...
2024-08-23 php开发问题
17