facebook
  • facebook-php-sdk
  • achievements
  • facebook-access-token
  • 2012-04-04 2 views 0 likes 
    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이 필요 말하는 제공됩니다.

    답변

    0

    Authenticating as an App 문서를 참조하십시오 - 당신이 앱 대리 할 수있는 응용 프로그램의 액세스 토큰을 사용합니다 - 사용자 액세스 토큰이 경우 (그리고 몇몇 다른 사람)

    +0

    내가 알고 있어요 충분하지 않습니다 . 위에서 언급 한 그래프 API 링크에 따라 앱의 액세스 토큰이 사용중인 access_token을 확인했습니다. 그것은 앱의 정보를 가져오고 사용자에 관한 정보는 가져 오지 않습니다. – Enzo

    +0

    죄송합니다. 오해의 소지가 있습니다. - 공유 된 링크의 메소드를 통해 가져온 앱 액세스 토큰을 사용할 수 있어야합니다. 이렇게하면 업적 유형을 읽고, 업적 유형을 만들고, 부여한 사용자의 새로운 업적을 게시 할 수 있습니다. publish_actions permission 경고 : 앱 설정에서 네이티브/데스크톱 앱이라고 말하면 앱 비밀번호를 신뢰할 수 없으며 이것을 사용할 수 없습니다. – Igy

    +0

    슬프게도, 작동하지 않으며 계속해서 오류가 발생합니다. 한숨 . 나는 어떻게 든 2 개의 업적을 얻을 수 있었지만 사용자에게 가져올 수는 있지만 새로운 것을 추가하거나, 내가 어떻게 든 얻은 2 개를 편집하거나 삭제할 수는 없습니다. 그것은 오히려 실망하게되고 있습니다. – Enzo

     관련 문제

    • 관련 문제 없음^_^