내 응용 프로그램에서 Facebook을 통해 무언가를 게시하려고 할 때 다음 오류가 발생합니다. 문제는 응용 프로그램이 게시 작업 권한을 요청하지 않았다는 것입니다.
var access_token = 'access_token'
FB.setAccessToken(access_token);
var body = '2 4 6 8 8.5';
FB.api('me/feed', 'post',{ message: body, access_token:access_token}, function (res) {
if(!res || res.error) {
console.log(!res ? 'error occurred' : res.error);
return;
}
{메시지 : '(# 200) 사용자가이 작업을 수행하도록 애플리케이션을 승인하지 않았습니다', 유형 : 'OAuthException', 코드 : 200}
그리고 사용자의 액세스 토큰, 응용 프로그램 액세스 토큰 또는 무엇을 사용 해야하는지에 대한 또 다른 질문이 있습니다.
앱이 Facebook에 게시 할 수 있도록하려면 사용자에게 publish_actions 확장 권한을 허용해야합니다.
me / feed 참조에 대한 게시 섹션을 참조하세요 . "publish_actions 권한이있는 사용자 액세스 토큰을 사용하여 새 게시물을 게시 할 수 있습니다." 사용자에게 "이 앱이 Facebook에 게시해도됩니까?"라는 메시지가 표시되고이 액세스 토큰이 작동하도록 수락해야합니다.
게시 를 시도하기 전에 사용자의 권한을 확인하는 것이 좋습니다 . me/permissions
끝점 에서 확인할 수 있습니다 .
{
"data": [
{
"permission": "installed",
"status": "granted"
},
{
"permission": "public_profile",
"status": "granted"
},
{
"permission": "publish_actions",
"status": "granted"
},
{
"permission": "user_friends",
"status": "granted"
}
]
}
다음을 실행하여이 데이터를 얻을 수 있습니다.
FB.api("/me/permissions", function (response) {
// data here
});
사용자에게 권한을 요청하려면 대화 상자를 scope
실행할 때 "publish_actions"를 추가해야합니다 FB.login
.
FB.login(function(response) {
// handle the response
}, {scope: 'publish_actions'});
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다