Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/381.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
在Javascript书签中使用Facebook Javascript SDK更新用户状态?_Javascript_Facebook_Oauth_Facebook Javascript Sdk_Bookmarklet - Fatal编程技术网

在Javascript书签中使用Facebook Javascript SDK更新用户状态?

在Javascript书签中使用Facebook Javascript SDK更新用户状态?,javascript,facebook,oauth,facebook-javascript-sdk,bookmarklet,Javascript,Facebook,Oauth,Facebook Javascript Sdk,Bookmarklet,我只是想知道是否可以在Javascript bookmarklet中使用Facebook Javascript SDK和OAuth 2.0,因为我无法让它工作。我实际上是想通过bookmarklet更新我的Facebook状态,但看起来FB.init什么都不做。我也没有得到任何失败的回应 有可能这样做吗?或者我是否违反了任何沙盒 我正在使用一个jquerybookmarklet样板文件,它非常有效。 初始化bookmarklet时,我附加了sdk var d = document,

我只是想知道是否可以在Javascript bookmarklet中使用Facebook Javascript SDK和OAuth 2.0,因为我无法让它工作。我实际上是想通过bookmarklet更新我的Facebook状态,但看起来FB.init什么都不做。我也没有得到任何失败的回应

有可能这样做吗?或者我是否违反了任何沙盒

我正在使用一个jquerybookmarklet样板文件,它非常有效。 初始化bookmarklet时,我附加了sdk

    var d = document,
        js = d.createElement('script'),
        root_node = d.createElement('div');

    js.id = 'facebook-jssdk';
    js.async = true;
    js.src = "http://connect.facebook.net/en_US/all.js";
    root_node.id = 'fb-root';
    d.getElementsByTagName('body')[0].appendChild(root_node);
    d.getElementsByTagName('head')[0].appendChild(js);
然后调用fb.init

    window.fbAsyncInit = function(){

        console.log('JS-SDK loaded');

        FB.init({ 
            appId: 'XXX', 
            status: true, 
            cookie: true,
            xfbml: true,
            oauth: true
        });

        FB.getLoginStatus(function(response){
            console.log(response);
        });

    };
实际上,看起来console.logresponse从未被调用过

谢谢,
martin

你可能应该让书签在画布URL上打开一个新页面,然后让它从该页面发布。

无法让它工作,你到目前为止做了什么?我更新了我原来的帖子。不知道为什么,但它现在起作用了。。经过一整天的尝试和错误。现在我的问题是fb.init方法只在我位于画布URL上时有效,这是在我的facebook应用程序设置中定义的。当我在另一个页面上触发bookmarklet时,什么都没有发生。有没有办法让我的bookmarklet在任何网站上运行?