facebook用户自定义故事的Graph Api v2.2配置文件对象?

facebook用户自定义故事的Graph Api v2.2配置文件对象?,facebook,facebook-graph-api,profile,Facebook,Facebook Graph Api,Profile,我正在开发一款facebook游戏,我想让玩家可以选择分享此类自定义故事: 用户名在游戏中击败一个人 带说明的UserB配置文件 根据我的研究,我应该在我的应用程序面板中定义这个自定义故事,定义facebook已经提供的动作节拍和对象配置文件。这些都是我做的 现在,使用JS SDK,我应该执行以下操作: FB.ui({ method: 'share_open_graph', action_type: 'namespace:beat', action_properties

我正在开发一款facebook游戏,我想让玩家可以选择分享此类自定义故事:

用户名在游戏中击败一个人 带说明的UserB配置文件

根据我的研究,我应该在我的应用程序面板中定义这个自定义故事,定义facebook已经提供的动作节拍和对象配置文件。这些都是我做的

现在,使用JS SDK,我应该执行以下操作:

FB.ui({
    method: 'share_open_graph',
    action_type: 'namespace:beat',
    action_properties: JSON.stringify({
        profile: profile_url or profile object,
    })
}, function(response){});
我遇到的问题是,我找不到提供功能概要文件对象的方法。首先,我尝试将类似http://www.facebook.com/userb\u id的内容作为profile\u url,但这不起作用,因为用户id是特定于应用程序的。我没有其他方法来建立这个链接,因为新的api用户的用户名没有作为profile edge的一部分提供,我无法理解profile edge http://www.facebook.com/app\u scope\u id/user\u id提供的链接有什么用。最后,我尝试创建自托管的profile对象,并在一定程度上成功了。我使用轮廓边缘名称、图片等信息为对象构建元标记。除了个人资料图片之外,一切都进行得很顺利,因为facebook的刮刀抱怨这张图片来自facebook CDN

那么,如何使用我拥有的用户信息向共享对话框提供功能配置文件对象呢?我认为这应该比使用自定义对象的自定义故事更简单,因为Facebook已经有了UserB的个人资料,所以只提供一个用户id就足够了

我该怎么办?提前谢谢

更新

我取得了一些进步,但仍然遇到了一个问题。我找到了一种发布自定义故事的方法,但只能通过api发布,而不是共享对话框。这很令人困惑

此代码有效,但需要发布操作权限:

FB.api('/me/namespace:beat', 'post', {
    profile: 'user_b_id',
    'fb:explicitly_shared': true
}, function(response) {
    console.log('Open graph action via API', response);
});
此代码不起作用:

FB.ui({
    method: 'share_open_graph',
             action_type: 'namespace:beat',
             action_properties: {
                profile: 'user_b_id',
                'fb:explicitly_shared': true
             }
}, function(response) {
    console.log('Open graph action via API', response);
});
它在尝试打开共享对话框窗口时返回错误,错误为:错误代码:100,错误消息:无法解析URL用户id处的对象

你知道为什么FB不能解析对象,但是当发布带有第一个代码块的自定义故事时,对象被解析了吗

更新2

在将问题提交给facebook之后,事实证明这是一个bug。现在修好了