0
솔루션 편집 : 클릭, 올바른 응용 프로그램 토큰을 반환 PHP SDK를 사용할 수 없으며 당신이 개발자 사이트의 앱 섹션에서 오픈 그래프 옵션을 칠 수 밝혀 "GET 코드는 "당신은이 작업을 수행해야합니다 .. 거기에서 응용 프로그램 액세스 토큰을 잡아 : 페이스 북 등록 성취 access_token이 문제
$token_url = 'https://graph.facebook.com/oauth/access_token?client_id=' . $fbConfig['appId'] . '&client_secret=' . $fbConfig['appSecret'] . '&grant_type=client_credentials';
$accessToken = explode('=',file_get_contents($token_url));
$accessToken = $accessToken[1];
원래 문제
: 는 PHP SDK 사용하여, 나는 내 성과를 등록에 실패 노력했습니다. 다음 오류가 계속 발생합니다. "이 메소드는 앱 access_token과 함께 호출해야합니다."그러나 opengraph (https://graph.facebook.com/app?access_token=ACCESS_TOKEN)에 사용하는 토큰을 입력하면 응용 프로그램 정보가 올바르게 표시됩니다.
여기 내 성과를 등록에 지금까지 시도한 방법은 다음과 같습니다
$param = array(
'access_token' => $accessToken,
'achievement' => 'http://domain.com/path/to/my/achievement/page',
'display_order' => $achievements['achievementWeight']
);
$achievement = $fb->api('/'.$this->CI->config->item('app_id').'/achievements', 'POST', $param);
$superCurl = "curl -F 'achievement=" . $achieveUrl . "&access_token=" . $accessToken . "' https://graph.facebook.com/" . $appId . "/achievements";
exec($superCurl,$result);
$url = 'https://graph.facebook.com/' . $this->CI->config->item('app_id') . '/achievements?access_token=' . $accessToken;
$c = curl_init ($url);
curl_setopt($c, CURLOPT_HEADER, false);
curl_setopt($c, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($c, CURLOPT_POST, true);
curl_setopt($c, CURLOPT_POSTFIELDS, $param);
curl_setopt($c, CURLOPT_RETURNTRANSFER, true);
if(curl_errno($c)){
$this->CI->firephp->log(curl_error($c));
}
$page = curl_exec ($c);
curl_close ($c);
모든 것은 항상 다시는 access_token이 필요 말하는 제공됩니다.
내가 알고 있어요 충분하지 않습니다 . 위에서 언급 한 그래프 API 링크에 따라 앱의 액세스 토큰이 사용중인 access_token을 확인했습니다. 그것은 앱의 정보를 가져오고 사용자에 관한 정보는 가져 오지 않습니다. – Enzo
죄송합니다. 오해의 소지가 있습니다. - 공유 된 링크의 메소드를 통해 가져온 앱 액세스 토큰을 사용할 수 있어야합니다. 이렇게하면 업적 유형을 읽고, 업적 유형을 만들고, 부여한 사용자의 새로운 업적을 게시 할 수 있습니다. publish_actions permission 경고 : 앱 설정에서 네이티브/데스크톱 앱이라고 말하면 앱 비밀번호를 신뢰할 수 없으며 이것을 사용할 수 없습니다. – Igy
슬프게도, 작동하지 않으며 계속해서 오류가 발생합니다. 한숨 . 나는 어떻게 든 2 개의 업적을 얻을 수 있었지만 사용자에게 가져올 수는 있지만 새로운 것을 추가하거나, 내가 어떻게 든 얻은 2 개를 편집하거나 삭제할 수는 없습니다. 그것은 오히려 실망하게되고 있습니다. – Enzo