2012-01-17 2 views
0

내 앱의 벽면 게시 기능을 개발 중입니다. Facebook Javascript SDK를 사용하고 있습니다. 하지만, 링크를 클릭하여 postToFeed() 함수를 호출하면 iframe과 완벽하게 작동합니다. 하지만 다른 방식으로 (예 : body onload)로드하려면 iframe에 "오류가 발생했습니다. 나중에 다시 시도하십시오."라는 오류 메시지가 표시됩니다. access_token에 FB.ui를 제공하여 세션 문제를 제거했지만 링크를 클릭하지 않고 작동시키지 않습니다. 아래는 내 코드입니다.Facebook 게시판이 벽에 일하지 않습니다.

<div id='fb-root'></div> 
    <script src='http://connect.facebook.net/en_US/all.js'></script> 
    <p><a onclick='postToFeed(); return false;'>Post to Feed</a></p> 
    <p id='msg'></p> 
    <?php 
    $token_url = "https://graph.facebook.com/oauth/access_token?client_id=MY_CLIENT_ID&client_secret=MY_CLIENT_SECRET&grant_type=client_credentials&redirect_uri=MY_REDIRECT_URI"; 
    $token = file_get_contents($token_url); 

     ?> 

    <script> 
    FB.init({appId: "MY_APP_ID", status: true, cookie: true}); 

    function postToFeed() { 

    // calling the API ... 
    var obj = { 
     method: 'stream.publish', 
     display: 'iframe', 
     access_token: '<?php echo $token;?>', 
     link: 'https://developers.facebook.com/docs/reference/dialogs/', 
     picture: 'http://fbrell.com/f8.jpg', 
     name: 'Facebook Dialogs', 
     caption: 'Reference Documentation', 
     description: 'Using Dialogs to interact with users.' 
    }; 

    function callback(response) { 
     document.getElementById('msg').innerHTML = "Post ID: " + response['post_id']; 
    } 

    FB.ui(obj, callback); 
    } 

</script> 

내 앱이 현재 샌드 박스 모드입니다. 하지만 그게 문제가 아닐 것이라고 생각합니다. 이것 좀 도와주세요. 감사합니다

답변

1

귀하의 방법이 잘못되었습니다. Facebook의 최신 사례를 사용하지 못할 수도 있습니다. 참조 : https://developers.facebook.com/docs/reference/dialogs/feed/

// calling the API ... 
var obj = { 
    method: 'feed', 
    link: 'https://developers.facebook.com/docs/reference/dialogs/', 
    picture: 'http://fbrell.com/f8.jpg', 
    name: 'Facebook Dialogs', 
    caption: 'Reference Documentation', 
    description: 'Using Dialogs to interact with users.' 
}; 

function callback(response) { 
    if (response && response.post_id) { 
    document.getElementById('msg').innerHTML = "Post ID: " + response.post_id; 
    } else { 
    alert('Post was not published.'); 
    }  
} 

FB.ui(obj, callback); 
+0

답장을 보내 주셔서 감사합니다. 나는 그것을 밖으로 정렬 .... :) –

+0

당신이 그것을 정리했기 때문에 당신이 질문을 닫을 수 있습니까? – DMCS

+0

어디에서 이걸 닫을 수 있니? –