Facebook页面应用程序支持

时间:2018-03-14 18:37:09

标签: facebook facebook-graph-api facebook-messenger facebook-messenger-bot

我正在尝试将facebook页面订阅到我的应用程序。当我登录我的帐户并点击页面名称进行订阅时,它会订阅应用程序,但是当我将帐户切换到其他Facebook帐户时,它会显示我的FB登录页面给我该帐户的页面列表以及何时我点击页面,它说订阅。但该页面实际上没有订阅该应用程序。这是我在订阅网页上的代码。

该应用程序是将页面连接到FB messenger bot。

<script>
                window.fbAsyncInit = function() {
                  FB.init({
                    appId      : 'my_app_id',
                    xfbml      : true,
                    version    : 'v2.11'
                  });
                  FB.AppEvents.logPageView();
                };

                (function(d, s, id){
                   var js, fjs = d.getElementsByTagName(s)[0];
                   if (d.getElementById(id)) {return;}
                   js = d.createElement(s); js.id = id;
                   js.src = "//connect.facebook.net/en_US/sdk.js";
                   fjs.parentNode.insertBefore(js, fjs);
                 }(document, 'script', 'facebook-jssdk'));
              </script>

              <script>

              function subscribeApp(page_id, page_access_token){
              console.log ('Subscribing page!' + page_id);
              FB.api(
              '/' + page_id + '/subscribed_apps', 
              'post',
              {access_token: page_access_token},
              function(response){
              console.log(response);

              });
              }


              function myFacebookLogin() {
                FB.login(function(response){
              console.log('Successfully loggedin', response);
              FB.api('/me/accounts', function(response){
              console.log('Pages retrived' , response);

              var pages = response.data;

              var ul = document.getElementById('list');
              var len = pages.length;
              for( i = 0 ; i<len; i++)
              {
              var page = pages[i];
              var li = document.createElement('li');
              var a = document.createElement('a');
              a.href = "#";
              a.onclick =  subscribeApp.bind(this, page.id, page.access_token);
              a.innerHTML = page.name
              li.appendChild(a);
              ul.appendChild(li);
              }
              });
              }, {scope: 'manage_pages'});
              }
              </script>

            <button class="btn btn-primary" onclick="myFacebookLogin()">Get Pages</button>
            <ul id="list">

            </ul>

我尝试使用页面范围作为manage_pages,pages_messaging,但它没有工作

0 个答案:

没有答案