1

문서는 말한다 : 모든 경우에다른 유형의 앱 액세스 토큰이 있습니까? <a href="https://developers.facebook.com/docs/reference/api/realtime/" rel="nofollow">Real-time Updates</a>에 대한

, 당신은 OAuth를 응용 프로그램 access_token이를 보내야합니다. 앱 액세스 토큰은 앱 ID와 앱 비밀을 사용하여 얻을 수있다 :

https://graph.facebook.com/oauth/access_token?client_id=<APP_ID>&client_secret=<APP_SECRET>&grant_type=client_credentials

나는이 일을 다시 형태 access_token=<APP_ID>|<String1>-<String2>의 문자열을 가지고있다.

한편, Facebook PHP SDK의 BaseFacebook::getApplicationAccessToken() 메소드는 앱 ID와 "|"를 사용하여 App Secret (32 자리 16 진수 표현으로 보입니다)을 간단하게 연결합니다. 구분자로 사용 :

/** 
* @return string The application access token, useful for gathering 
*    public information about users and applications. 
*/ 
protected function getApplicationAccessToken() { 
    return $this->appId.'|'.$this->appSecret; 
} 

두 가지 종류의 앱 액세스 토큰은 어떤 용도로 사용됩니까? 그들은 상호 교환이 가능합니까?

답변

1

대체 할 수 있습니까?

제 추측은 그렇다고합니다. 두 가지 모두 앱의 앱 액세스 토큰으로 받아 들여지고 앱과 동일한 권한을 제공합니다.

페이스 북 객체 인스턴스를 초기화 했으므로 PHP SDK가 이미 앱 ID를 알고 있습니다. 따라서 거기에 액세스 토큰을 만드는 "단순한"버전을 사용해도 아무런 해가 없습니다. (모든 사람들이 코드 내부를 들여다 볼 수 있기 때문에 그래프 API 끝 점이 여기에 사용하는 앱 액세스 토큰을 만드는 다른 방법을 제공하는 것은 어리 석다.)

반면에 앱 액세스 토큰은 컨트롤 (?) 외부에서 사용해야하므로 첫 번째 버전도 제공하므로 앱 비공개를 제공 할 필요가 없습니다.