编辑:见这张照片:http ://trackauthoritymusic.com/wwwroot/images/fb-issue-bug.jpg 。
- 对于通过 FB 重定向从我的页面获取的网络选项卡和所有 HTTPS 标头的快照。
- 上图中的窗口显示了下面代码中的 var_dump:
- 对于访问令牌,我只获得默认的组合 appId|secret。
- 当我在 Facebook 的第一个联系点上 var_dump $_REQUESTS 时,我什么也得不到,所以我知道 codeigniter 没有删除这些值,但我绝对没有从 Facebook 收到“signed_request”帖子!
- 我 85.1% 确定我的 Facebook 应用程序设置没问题。我在测试时进行了数十次调整和重置,但均未成功。
- 当我使用浏览器哈希中的访问令牌将设置切换到客户端方法时,我确实得到了一个有效的令牌,但我拼命地试图避免我页面上的所有 javascript 并且无论如何都需要集成 php。
- 所有这一切只有在您批准该应用程序后才会发生,我可以在 Insights 中手动查找他们的成员资格,但知道他们在没有看到他们的令牌的情况下无法访问该应用程序。
自从我的原始帖子低于4 月 24日以来,我一直把这个错误放在一边:....
试错和研究已经 3 天了:
我的环境:使用 facebook sdk 3 和 CodeIgniter 2 的 LAMP
登录代码:
$CI->load->library('facebook', array("appId"=>APP_ID, "secret"=>APP_SECRET)); $this->visitor['access_token'] = $CI->facebook->getAccessToken(); $fb_id = $CI->facebook->getUser(); var_dump($CI->facebook); //见上图 var_dump($fb_id); // == 0 如果 ($fb_id && $fb_id > 0) { $temp = $CI->users->getUserByFb($fb_id); 如果 (!$temp) { $this->insertFBUser($fb_id); $this->visitor['redirect'] = "?prompt=newfb"; } 别的 { $this->visitor = array_merge($this->visitor, $temp); if (isset($this->visitor['user_allowed']) && $this->visitor['user_allowed'] == 0) { $CI->users->updateUser(array("user_allowed" => 1), $this->visitor['user_id']); } } } 别的 { array_push($this->errors, $CI->input->get_post("error_msg", false)); array_push($this->errors, $CI->input->get_post("error_code", false)); array_push($this->errors, $CI->input->get_post("error_reason", false)); array_push($this->errors, $CI->input->get_post("error", false)); array_push($this->errors, $CI->input->get_post("error_description", false)); if ($CI->input->get_post("autoclose", false) == true) { array_push($this->errors, "javascript stackoverflow 的编码很奇怪,但基本上改变了弹出窗口的标签,所以父页面会自动关闭它"); } var_dump($this->errors); 死(“纳达”); }
研究与调试:
这篇文章也描述了我的问题,但解决方案不起作用:stackoverflow.com/questions/8587098/suddenly-getuser-became-to-return-0-php-3-1-1-sdk有或没有尾随逗号在此页面上的 DROP_QUERY_PARAMS 数组中。
Facebook 在 url、post 或 session 中没有向我发送任何错误消息,并且很好地抓取了我的页面
几天前一切正常,我对这段代码几乎没有改变。
无论我使用 http 还是 https,登录现在都会失败
弹出链接在以下位置打开:
www.facebook.com/dialog/oauth ?client_id=222912307731474& redirect_uri =https%3A%2F%2Ftrackauthoritymusic.com%2Fmanage%2Fusers%2Flogin%3Fautoclose%3Dtrue&state=4522cb9da5bf5107d690a22eee6c5a2e&scope=email&display=期望的登录URL同时具有状态和代码参数显然有效的: trackauthoritymusic.com/manage/users/login?autoclose=true&state=4522cb9da5bf5107d690a22eee6c5a2e&code=AQBfSkI4y_VxhCuF3coVvNmjetdGZjugyFv0UsLlKt5sR5MEGdY8KqpDXZKvqHTGaSHhzY4pHXuR_zmilkwmoQ5y6M9jh15GPI6DXz5E2fSBizAVlrlebriNGcNZb4DRaDFK8cxPJoa9xB2ERuimtuizmlZERNa8hwJxLXtztqkWWhkLFCaGjQvAyyf5jJRkuoztmvfKDIZz3W9lslM6fk_m
但此时,sdk 无法获取任何访问令牌或 facebook 会话数据。
请帮忙!