我使用以下代码将请求从应用程序发送给用户。一切都很好,但突然停止工作,我得到一个错误: OAuthException:(#2)无法创建任何应用请求
$config = array();
$config['appId'] = $this->app_id;
$config['secret'] = $this->app_secret;
$facebook = new Facebook($config);
$url = "https://graph.facebook.com/oauth/access_token?client_id={$this->app_id}&client_secret={$this->app_secret}&grant_type=client_credentials";
$token = file_get_contents($url);
$request = $facebook->api('/'.$id.'/apprequests', 'POST', array(
'message' => $text,
'access_token' => $token
)
);
看起来令牌有效,我不知道还有什么地方可以解决问题。
答案 0 :(得分:1)
端点不仅返回令牌,而是返回access_token=YOUR_APP_ACCESS_TOKEN
形式的字符串。
因此,您传递的access_token
参数并不是真正的访问令牌 - 您必须首先修剪access_token=
。
答案 1 :(得分:0)
您需要有效的app access_token才能向API发出请求。创建app access_token的最简单方法是使用app_id和secret。正如Facebook documentation所述:
还有另一种调用Graph API的方法 要求使用生成的应用令牌。您只需传递您的应用ID即可 当您拨打电话时,app secret作为access_token参数:
https://graph.facebook.com/endpoint?key=value&access_token=app_id|app_secret