用户在运行时未看到Facebook应用权限

时间:2017-12-24 18:53:34

标签: web-applications facebook-apps

美好的一天。 通过我的网络应用程序,我允许我的客户在他们的Facebook页面上发布相册,并使用自己的帐户登录社交网络。为了实现它,我创建了一个公共Facebook应用程序并将客户设置为测试人员。为了发布专辑,我创建了一个javascript例程。对于其中一些,当clck一个发布相册的Web应用程序的按钮时,将显示允许app tyo使其不显示的请求,并且不执行操作。浏览器控制台上没有出现任何javascript错误。浏览器中的弹出窗口被禁用。为什么? 最好的祝福。 斯特凡诺·埃拉尼

1 个答案:

答案 0 :(得分:0)

这是一段javascript代码:

window.fbAsyncInit = function() {
    FB.init({
        appId : "<%=myfbappid%>",
        xfbml : false,
        version : "v2.11"
    });
    FB.AppEvents.logPageView();
    pubblicaFacebook();
}

function pubblicaFacebook() {
    FB.getLoginStatus(function(response) {
    if (response.status == 'connected') {
        var pageId = "<%=pageid%>";
        var accessToken = "";
        if (pageId == "me") {
            accessToken = response.authResponse.accessToken;
        }
        FB.api("/me/accounts", function(response) {
            for (i = 0; i < response.data.length; i++) {
                var p_id = response.data[i].id;
                if (pageId == p_id) {
                    accessToken = response.data[i].access_token;
                    break;
                }
            }
            FB.api("/<%=pageid%>/albums", "post", {message: messaggio, name: '<%=nomealbum%>', access_token: accessToken}, function (response) {
                if (response && !response.error) {
                    var albumId = response.id;
                    if (albumId > 0) {
                        var fotos = "<%=foto%>";
                        var afoto = new Array();
                        var x = 0;
                        var i = 0;
                        while (fotos.indexOf("#", x) > 0) {
                            var y = fotos.indexOf("#", x);
                            afoto[i] = fotos.substring(x, y);
                            x = y + 1;
                            i++;
                        }
                        for (i = 0; i < afoto.length; i++) {
                            FB.api("/" + albumId + "/photos", "post", {message: "", url: afoto[i], access_token: accessToken});
                        }
                    }
                } else {
                    console.log(response);
                }
            });
        } else {
            FB.login(function(response) {
                if (response.authResponse) {
                    pubblicaFacebook();
                }
            }, {scope: "publish_actions,publish_pages,manage_pages"});
        }
    });
}