Facebook JS API对不同的appid';s

Facebook JS API对不同的appid';s,facebook,facebook-graph-api,facebook-javascript-sdk,Facebook,Facebook Graph Api,Facebook Javascript Sdk,我正在构建一个web应用程序,我需要将它与facebook连接起来。我的最终目标是把这张照片贴到用户的墙上和相册上,但我遇到了麻烦 当使用我自己的应用程序id(我自己的,我的意思是我用我自己的facebook帐户创建了这个“测试”应用程序)时,它工作得非常好——图片发布在用户的墙上和相册上。但当使用客户端app\u id(客户端用自己的帐户创建了这个应用程序,我在这里被列为开发人员)时,它的行为就不同了——用户墙上没有张贴任何图片 我已经检查了设置,它们是一样的。代码,相同。我在facebook

我正在构建一个web应用程序,我需要将它与facebook连接起来。我的最终目标是把这张照片贴到用户的墙上和相册上,但我遇到了麻烦

当使用我自己的
应用程序id
(我自己的,我的意思是我用我自己的facebook帐户创建了这个“测试”应用程序)时,它工作得非常好——图片发布在用户的墙上和相册上。但当使用客户端
app\u id
(客户端用自己的帐户创建了这个应用程序,我在这里被列为开发人员)时,它的行为就不同了——用户墙上没有张贴任何图片

我已经检查了设置,它们是一样的。代码,相同。我在facebook上发布图片时得到的回应-不同

下面是我正在使用的代码:

<button>share photo</button>
<div id="fb-root"></div>
<script>
var graph_url = 'https://graph.facebook.com/me/photos?access_token=';
var photo_url = '<?php echo $photo_url; ?>';
var user_id = null;
var access_token = null;

window.fbAsyncInit = function() {
    // init the FB JS SDK
    FB.init({
        appId      : '<?php echo $app_id; ?>',                        // App ID from the app dashboard
        channelUrl : '//my-website/channel.php', // Channel file for x-domain comms
        status     : true,                                 // Check Facebook Login status
        xfbml      : true                                  // Look for social plugins on the page
    });

    // Additional initialization code such as adding Event Listeners goes here
    FB.getLoginStatus(function(response) {
        if (response.status === 'connected') {
            user_id = response.authResponse.userID;
            access_token = response.authResponse.accessToken;
        } else if (response.status === 'not_authorized') {
            // nothing to do
        } else {
            FB.login(function(response) {
                if (response.authResponse) {
                    user_id = response.authResponse.userID;
                    access_token = response.authResponse.accessToken;
                }
            });
        }
    });

    $('button').on('click', function(ev) {
        if (user_id && access_token) {
            FB.api('/me/photos', 'post', {
                url: photo_url,
                message: 'dasdad',
                access_token: access_token
            }, function(response) {
                console.log(response); // <---- this different
            });
        }
    });
};

// Load the SDK asynchronously
(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/all.js";
    fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
</script>
共享照片
var图https://graph.facebook.com/me/photos?access_token=';
var photo_url='';
var user_id=null;
var-access_-token=null;
window.fbAsyninit=函数(){
//初始化FBJSSDK
FB.init({
appId:“”,//应用程序仪表板中的应用程序ID
channelUrl:“//我的网站/channel.php”,//用于x域通信的通道文件
状态:true,//检查Facebook登录状态
xfbml:true//在页面上查找社交插件
});
//附加的初始化代码(如添加事件侦听器)如下所示
FB.getLoginStatus(函数(响应){
如果(response.status===“已连接”){
user_id=response.authResponse.userID;
access_token=response.authResponse.accessToken;
}else if(response.status===“未授权”){
//无事可做
}否则{
FB.登录(功能(响应){
if(response.authResponse){
user_id=response.authResponse.userID;
access_token=response.authResponse.accessToken;
}
});
}
});
$('button')。打开('click',函数(ev){
if(用户标识和访问令牌){
FB.api(“/me/photos”、“post”{
url:photo_url,
消息:“dasdad”,
访问令牌:访问令牌
},功能(回应){

console.log(response);//我没有看到您在登录时请求任何权限,因此我假设您的应用程序可能仍然具有该权限,因为您之前已授予该权限,但另一个应用程序没有该权限


请将两个应用的访问令牌登录到浏览器控制台,然后在此处选中它

我没有看到您在登录时请求任何权限–因此我假设您的应用可能仍然具有该权限,因为您之前已授予该权限,但另一个应用没有该权限。请将两个应用的访问令牌登录到浏览器控制台pps,然后在这里检查谢谢!这就是它!你能不能也添加这个作为答案,这样我就可以接受它?