2011-11-14 4 views
2

페이스북 페이지에 사진을 게시하는 앱이 있지만 페이스 북 비밀번호를 변경하면 토큰이 재설정됩니다. 그래서 나는 모든 토큰을 가져 오는 인증 과정을 거쳤습니다. 그리고 나는이 메시지를 계속 듣는다. { "message": "액세스 토큰 서명이 잘못되었습니다.", "type": "OAuthException"}}액세스 토큰 서명이 잘못되었습니다 - 앱을 사용하여 fb 페이지에 사진 게시

내 페이지 토큰이 잘못되었다고 생각합니다. 이전 페이지 토큰과 비교할 때 새 페이지 토큰은 30 자 정도의 추가 문자입니다. 나는 한 걸음도 놓치고 있다고 생각하고있다.

https://graph.facebook.com/me/accounts?access_token=을 사용하여 내 페이지의 토큰을 가져 왔습니다.

내가 토큰 페이지와 단계 실종을 AAACeXXXXXXXXXXXXXXXXXXXpLiXZCYCIEsBzK59vUcP00cpk4XXXXXXXXXXXXXXXd2tnbCePVYLEuk0OBrQBmTRnGHfs3gZDZD :

이 내 오래된 페이지 토큰은이 같은 지금 = ftXXXXXXXXXVJCeVnt-sKYoM

하지만처럼 보였다 무엇인가?

범위 문제는 아닙니다. 나는이 일에 모든 허락을 맡겼습니다.

도움 주셔서 감사합니다.

여기 내 모든 토큰 액세스가 엉망이되기 전에 작동하는 코드 예제가 있습니다. 나는 여기에 나의 새로운 토큰을 가지고있다. 그것은 나를 괴롭히는 것이다. 나머지 코드는 아닙니다. 모든 통찰력은 거대합니다.

$access_token = '1743XXXXXXXXX9104|fcdApQ4CXXXXXXXXXMo82SRHQh8o|81XXXXXXXXX70|AAACelwXXXXXXXXXuiTpY2BBwUZBpLiXZCYXXXXXXXXXcpk4g4FBkhpwykR0amEcdn1Kd2tXXXXXXXXXrQBmTRnGHfs3gZDZD'; 
$post_name = 'NAME'; 
$post_link = 'http://mykirklands.com'; 
$post_picture = '000000.jpg'; 
$post_description = 'description'; 

// CRAFT OUR MESSAGE TO POST 
$url = "https://graph.facebook.com/$page_id/photos"; 
$post_name = $content; 
$post_picture = '@'.$_SERVER['DOCUMENT_ROOT'].''.$image; 
$attachment[$count] = array('access_token' => $access_token,       
'source'  => "$post_picture", 
'message'  => "$post_name" 
); 
echo $count++; 
} 


foreach($attachment as $row){ 
// SEND TO FACEBOOK 
$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL,$url); 
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); 
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2); 
curl_setopt($ch, CURLOPT_POST, true); 
curl_setopt($ch, CURLOPT_POSTFIELDS, $row); 
$result= @curl_exec($ch); 
curl_close ($ch); 
}; 

답변

2

이 답변을 찾았습니다. 페이스 북이 최근에 몇 가지를 바꾼 것처럼 보입니다.

APP_ID의 포맷을 가지고하는 데 사용되는 기존 액세스 토큰을 | APP_TOKEN | PAGE_ID | PAGE_TOKEN

응용 프로그램에서 페이스 북의 벽에 게시하는 데 필요한 새로운 액세스 토큰은 다음과 같습니다 TOKEN 페이지

페이지 토큰 사이의 차이는 길이에 : 올드 토큰

4qVvc4wBz14_fgJLqE7PeQyLgaY

새로운 토큰

XXXXXXXXXXcnPXXXXXXXXXXVr3hmNPsqypxR9mXXXXXXXXXXXVGFdmQeWZCXXXXXXXXXXelrC69kdwZCXXXqD98IislBJ5YYYYYYYwZDZD

새로운 토큰이 페이지에 부여 된 권한뿐만 아니라 응용 프로그램을 인증 할만큼 충분한 보안을 가지고 있다고 생각합니다.

나는 PHP 스크립트를 사용하여 이미지 게시를 cURL을 통해 페이지의 페이스 북 벽에 게시하고 있습니다. 또한 cURL에 보내는 URL에 토큰을 변수로 포함시켜야한다는 점에 유의해야합니다.

$url = "https://graph.facebook.com/$page_id/photos?access_token=$page_access_token";

나는까지이 일을 정돈하는 중요한 코드 블록을 추가 해요 :

$attachment = array('message' => '', 
'name' => "$post_name", 
'caption' => '', 
'link' => '', 
'description' => "$post_name", 
'source' => "$post_picture", 
'actions' => array(array('name' => '', 
'link' => '')) 
); 

$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL,$url); 
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); 
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2); 
curl_setopt($ch, CURLOPT_POST, true); 
curl_setopt($ch, CURLOPT_POSTFIELDS, $attachment); 
$result= @curl_exec($ch); 
curl_close ($ch); 

모든 다. 상황이 정상적으로 작동합니다. 이에 대해 궁금한 점이 있으면 알려주십시오. 나는이 간단한 변화에 도달하기 전에 3 일 동안 벽에 머리를 얹었다. 아무도 내가 겪은 것을 통과하지 않아야한다.

관련 문제