Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/facebook/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Facebook发送对话验证_Facebook_Facebook Javascript Sdk - Fatal编程技术网

Facebook发送对话验证

Facebook发送对话验证,facebook,facebook-javascript-sdk,Facebook,Facebook Javascript Sdk,我正在创建一个自定义的facebook共享功能,这比我最初想象的要复杂得多 我必须创建一个facebook应用程序,然后使用它的ID来启动它 如果您尝试在facebook上共享页面,它会让您登录facebook(如果未登录),然后它会请求访问您的个人资料(仅在第一次共享时),然后继续共享对话,让您共享 但我注意到,其他网站,包括youtube和BBC,他们不要求访问facebook上的共享,而是直接进入共享对话 有没有办法做到这一点 使用的代码如下: <script type="text/

我正在创建一个自定义的facebook共享功能,这比我最初想象的要复杂得多

我必须创建一个facebook应用程序,然后使用它的ID来启动它

如果您尝试在facebook上共享页面,它会让您登录facebook(如果未登录),然后它会请求访问您的个人资料(仅在第一次共享时),然后继续共享对话,让您共享

但我注意到,其他网站,包括youtube和BBC,他们不要求访问facebook上的共享,而是直接进入共享对话

有没有办法做到这一点

使用的代码如下:

<script type="text/javascript" src="http://connect.facebook.net/en_US/all.js"></script>
<script>
    FB.init({
        appId      : '*APP_ID*', // App ID
        status     : true, // check login status
        cookie     : true, // enable cookies to allow the server to access the session
        xfbml      : true,  // parse XFBML
        link       : '*LINK*'
    });
    $('.share-print .facebook > a').click(function(e){
        e.preventDefault();

        FB.getLoginStatus(function(response) {
            if (response.status === 'connected') {
                facebookSend();
                var uid = response.authResponse.userID;
                var accessToken = response.authResponse.accessToken;
            } else if (response.status === 'not_authorized') {
                // the user is logged in to Facebook, 
                // but has not authenticated your app
                FB.login(function(response) {
                    if (response.authResponse) {
                        console.log('Logged in');
                        facebookSend();
                    } else {
                        console.log('Not logged in');
                    }
                });
            } else {
                // the user isn't logged in to Facebook.
                FB.login(function(response) {
                    if (response.authResponse) {
                        console.log('Logged in');
                        facebookSend();
                    } else {
                        console.log('Not logged in');
                    }
                });
            }
        });

    });
    var facebookSend = function() {
        console.log('facebookSend started');
        FB.ui({ 
            method: 'feed',
            display: 'iframe',
            link: '*PAGE_LINK*'
        });
    }
</script>

FB.init({
appId:'*APP_ID*',//APP ID
状态:true,//检查登录状态
cookie:true,//启用cookie以允许服务器访问会话
xfbml:true,//解析xfbml
链接:'*link*'
});
$('.share print.facebook>a')。单击(函数(e){
e、 预防默认值();
FB.getLoginStatus(函数(响应){
如果(response.status===“已连接”){
facebookSend();
var uid=response.authResponse.userID;
var accessToken=response.authResponse.accessToken;
}else if(response.status===“未授权”){
//用户已登录到Facebook,
//但尚未验证您的应用程序
FB.登录(功能(响应){
if(response.authResponse){
console.log(“登录”);
facebookSend();
}否则{
console.log(“未登录”);
}
});
}否则{
//用户未登录到Facebook。
FB.登录(功能(响应){
if(response.authResponse){
console.log(“登录”);
facebookSend();
}否则{
console.log(“未登录”);
}
});
}
});
});
var facebookSend=函数(){
log('facebookSend start');
FB.ui({
方法:“提要”,
显示:“iframe”,
链接:'*页面链接*'
});
}