我们陷入了一个场景,我们刚建完的Facebook应用程序必须驻留在父iFrame中。 (直到现在我们都不知道这个) 我们想知道是否有办法通过仅使用'signed_request'令牌轻松构建PHP Facebook对象和JavaScript Facebook对象。 如果没有,尝试让父iFrame以某种方式向我们发送facebook cookies并且我们设置相同的cookie然后尝试构建对象是否有任何意义?
任何对此的帮助都会非常感激,因为我们在发布之前就已经停留了几天。
答案 0 :(得分:1)
Facebook对象是在本地构建的。它甚至不需要signed_request。 我相信将签名的请求作为$ _GET参数传递给内部框架就足够了,所以Facebook类可以从那里选择它:
public function getSignedRequest() {
if (!$this->signedRequest) {
if (isset($_REQUEST['signed_request'])) {
$this->signedRequest = $this->parseSignedRequest(
$_REQUEST['signed_request']);
} else if (isset($_COOKIE[$this->getSignedRequestCookieName()])) {
$this->signedRequest = $this->parseSignedRequest(
$_COOKIE[$this->getSignedRequestCookieName()]);
}
}
return $this->signedRequest;
}
setAccessToken是一个公共函数,因此如果您需要访问令牌,也可以使用它。
可悲的是,我不够好给你一个关于JavaScript的建议:(