Iframe应用程序JavaScript SDKpublish对话框错误(代码102)

Iframe app JavaScript SDKpublish dialog error (code 102)

本文关键字:代码 错误 对话框 应用程序 JavaScript SDKpublish Iframe      更新时间:2023-09-26

我通过javascript SDK发布对话框时遇到问题。它有时有效,有时无效。

它抛出这个错误:

API错误代码:102 API错误描述:会话密钥无效或无更长有效的错误消息:Iframe对话框必须使用会话密钥调用

我的代码:

  <script>
    window.fbAsyncInit = function() {
      FB.init({
        appId      : 'CENSORED', // App ID
        status     : true, // check login status
        cookie     : true, // enable cookies to allow the server to access the session
        xfbml      : true  // parse XFBML
      });
      // wait a moment before showing dialog.
      setTimeout("showbox()", 2 * 1000);
    };
    // Load the SDK Asynchronously
    (function(d){
       var js, id = 'facebook-jssdk'; if (d.getElementById(id)) {return;}
       js = d.createElement('script'); js.id = id; js.async = true;
       js.src = "//connect.facebook.net/en_US/all.js";
       d.getElementsByTagName('head')[0].appendChild(js);
     }(document));
  </script>
and
    <script>
     function showbox()
     {                          
          FB.ui(
          {
            display: 'iframe',
            method: 'feed',
            name: 'ASD ASD ASD:',
            link: 'https://apps.facebook.com/XXX/',
            picture: 'https://skvelazabava.eu/XXX/yy.jpg',
            caption: 'Největší alkoholici mezi tvými přáteli jsou:',
            description: ' ',
            properties: [{text:"XXX", href:"https://apps.facebook.com/XXX/"}, 
                         {text:"YYY", href:"https://apps.facebook.com/XXX/"} ], 
            redirect_uri: 'https://url.eu/'
          });
     }                    
    </script>

我必须做些什么才能确保对话框有会话密钥。

这也是我的情况,为其他遇到这种情况的人澄清:

<script>
  window.fbAsyncInit = function() {
    FB.init({
        appId  : '{{facebook_app_id}}',
        app_token : '<%=@access_token%>',
        status     : true,
      });
    FB.getLoginStatus(function(response) {
      console.log(response);
      FB.ui({
        method: 'apprequests',
        message: 'Have you heard about Rell?',
        data: 'invite-to-rell-42',
        display: 'iframe',
        filters: [{name: 'Daaku', user_ids: ['1677846385']}, 'app_non_users', {name: 'Games People', user_ids: [703, 6203644]}]
      });  
    });

  };
  // Load the SDK Asynchronously
  (function(d){
     var js, id = 'facebook-jssdk', ref = d.getElementsByTagName('script')[0];
     if (d.getElementById(id)) {return;}
     js = d.createElement('script'); js.id = id; js.async = true;
     js.src = "//connect.facebook.net/en_US/all.js";
     ref.parentNode.insertBefore(js, ref);
   }(document));
</script>