如何验证外部Web应用程序发布到Facebook应用程序的页面?

时间:2012-05-16 17:29:23

标签: facebook api authentication oauth token

有没有人能够弄清楚如何验证外部网站以发布到Facebook应用的页面(墙)?

我们有一个外部rails网站,我想要做的就是在创建新资源时发布到我们的Facebook应用程序页面。我现在对所有这些令牌和期满感到困惑!!!

实施例。我可以手动访问: https://www.facebook.com/dialog/oauth?client_id=(our客户端ID)& redirect_uri =(我们的重定向uri)& scope = manges_pages,publish_stream& response_type = token

(无括号)

获取帐户访问令牌,但这种方法是手动的,只有当我通过浏览器并且我已登录FB(因此它使用cookie)时它才有效。如何自动化外部Web应用程序的正常化过程?

1 个答案:

答案 0 :(得分:0)

我会尝试对URL使用跨域AJAX GET请求(带参数)。这将允许请求使用当前用户的cookie。 jQuery对于这种情况是相当合理的。 $阿贾克斯();使用JSONP应该这样做。

这样的事情:

$.ajax({
    type: 'GET',
    url: 'https://www.facebook.com/dialog/oauth',
    data: {
        client_id: '(our client id)',
        redirect_uri: '(our redirect uri)',
        scope: 'manges_pages',
        publish_stream: '',
        response_type: 'token',
        format: 'jsonp'
    },
    dataType: 'jsonp',
    success: function(data)
    {
        // Do stuff.
    }
});

修改 需要注意的是,我还没有专门针对Facebook的API做过这件事。在进行一些挖掘时,我不知道是否可以仅使用GET请求: https://developers.facebook.com/docs/reference/api/

似乎您需要在服务器端进行某种身份验证才能发布到他们的API。