사용자가 이미지를 페이지의 앨범에 업로드 할 수 있도록 앱을 개발했습니다. 사용자가 권한을 부여하지 않기를 바라고 앱의 액세스 토큰을 사용하여 이미지를 업로드했습니다. 관리자가 로그인되어 있고 액세스 토큰이 만료되지 않은 경우이 작업이 정상적으로 작동합니다. 단지 몇 시간 동안 지속되는 것으로 보입니다. 나는 stackoverflow 및 facebook을 통해 보았고 여러 가지를 시도했지만 아무 것도 작동하지 않는 것 같습니다. 다음은 내가 사용하는 코드 중 일부입니다 :Facebook 액세스 토큰이 만료되어 내 앱이 작동하지 않음
try {
$facebook->setAccessToken("APP_ACCESS_TOKEN_FROM_GRAPH_API_TOOL");
$token_url="https://graph.facebook.com/oauth/access_token?client_id=APP_ID&client_secret=APP_SECRET&grant_type=fb_exchange_token&fb_exchange_token=".$facebook->getAccessToken();
$page_id = 'PAGE_ID';
$response = file_get_contents($token_url);
$params = null;
parse_str($response, $params);
$page_info['access_token'] = $params['access_token'];
$page_info = $facebook->api("/".$page_id."?fields=access_token");
if(!empty($page_info['access_token'])) {
$photo_details['access_token'] = $page_info['access_token'];
$upload_photo = $facebook->api('/'.$page_id.'/photos', 'post', $photo_details);
나는 꿈꿔? 이것이 가능하고 코드를 망쳤습니다. 어떤 도움도 올바른 방향으로 나를 가리키게 될 것입니다 ...
어떻게 페이지 관리자로 로그인 하시겠습니까? 클라이언트 측 또는 서버 측 Oauth 흐름을 사용하고 있습니까? 관리자를 위해 서버 측 흐름을 사용하여 60 일 토큰을 얻은 다음'/ accounts' 엔드 포인트를 사용하여 페이지 액세스 토큰을 가져 오면 페이지 액세스 토큰은 무한이어야합니다 – Igy
php-sdk를 사용하고 있습니다. 나는 서버 측을 사용할 것입니다 ... 현재 시도한 후 처음 2 줄 이외의 oauth 흐름은 없습니다. setAccessToken은 admin/app에서 access_token을 가져 와서 그래프 API 호출에서 바로 사용합니다. – user1896369
서버 측 흐름을 사용하는 경우 페이지 관리를 위해 얻은 토큰은 60 일이어야하며 '//accounts'에서 검색하는 페이지 액세스 토큰은 무한해야합니다. 작동하지 않는 경우, 강제로 앱을 제거한 다음 ('/ me/permissions? method = delete & access_token = XXX') 다시 설치하고 작동하는지 확인하십시오. –
Igy