0

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

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

前任。我可以手动访问: https ://www.facebook.com/dialog/oauth? client_id=(our client id)&redirect_uri=(our redirect uri)&scope=manges_pages,publish_stream&response_type=token

(无括号)

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

4

1 回答 1

0

我会尝试对 URL 使用跨域 AJAX GET 请求(带参数)。这将允许请求利用当前用户的 cookie。对于这种情况,jQuery 是相当合理的。$.ajax(); 使用 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。

于 2012-05-16T21:41:29.783 回答