在我對這個主題所做的所有研究中,90%已經過時,這使我相信最近有一些變化Facebook JS SDK關於明確共享Open Graph故事。我有以下代碼:通過FB.ui Share對話框爲顯式共享的開放圖故事動態生成描述
function postToFB(desc){
FB.ui({
method: 'share_open_graph',
action_type: 'mynamespace:myaction',
action_properties: JSON.stringify({
myobject: "myobjectid"
})
}, function(response){});
}
這裏的問題是,它會嘗試與只有我在我的應用程序設置了Facebook的Open Graph部分設置的設置共享爲MyObject。我想使用同一個對象,但每次共享時都要使用動態「desc」變量來更改描述。有誰知道如何做到這一點?我可以在我的應用程序設置的Facebook Open Graph部分中靜態設置Caption,但我需要每次分享它時動態設置它。
我已經通過Facebook JS SDK搜索了可以添加到action_properties的其他鍵/值對,但是SDK信息在這方面非常有限。
UPDATE
我已經修改了代碼,包括2個電話,一個創建對象,第二次發佈的新對象的信息的故事。下面的代碼:
function postToFB(desc){
FB.api(
'me/objects/mynamespace:myobject',
'post',
{
object: {
"app_id": myappid,
"type": "mynamespace:myobject",
"url": "myurl",
"title": "mytitle",
"image": "myimgurl",
"description": desc
}
},
function(response) {
console.log(response);
FB.ui({
method: 'share_open_graph',
action_type: 'mynamespace:myaction',
action_properties: JSON.stringify({
myobject: response.id
})
}, function(r){});
});
}
然而,根據對這一問題的意見:Facebook object API - duplicate objects created Facebook的工作人員表示這種做法不會被Facebook被批准,因爲一個動作由用戶不能產生兩個職位,此代碼現在確實。其中一個將對象發佈到Facebook用戶的活動日誌中,然後將其發佈到活動日誌和新聞源。
如果我只能打一個電話,並且規定FB.ui函數本身的myobject描述應該是什麼,那就太好了。有誰知道如何做到這一點?