简体   繁体   中英

Facebook custom story share using JavaScript sdk() showing error(Action Requires At Least One Reference)

I am using JavaScript sdk for one of my Facebook canvas game application. I am trying to implement custom story share dialog to post story on user wall.

The information available on developer site is unclear and limited.The bellow code is for sharing custom story using open grap API. Bellow code is available on Facebook developer site link provided( https://developers.facebook.com/docs/sharing/reference/share-dialog ). The Facebook provided code is working fine as its using predefined action_type.

FB.ui({
   method: 'share_open_graph',
   action_type: 'og.likes',
   action_properties: JSON.stringify({
   object:'https://developers.facebook.com/docs/',
    })
  }, function(response){});

I have create an object(cricket) and action(play) for custom story on FB Developer console App's Open Graph tab.i have created a self hosted Object(html page) called cricket.html.Bellow is the content or my html page.i verified the html page on Open Graph Object Debugger.Graph Object Debugger showing me all the information, what i have given with no errors or warnings .

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<meta property="fb:app_id"          content="*************" /> 
<meta property="og:type"            content="appnamespace:cricket" /> 
<meta property="og:title"           content="App for u" /> 
<meta property="og:url"               content="https://example.com/appnamespace/cricket.html" /> 
<meta property="og:description"     content="Find me on facebook for u" /> 
<meta property="og:image"           content="https://example.com/appnamespace/image/any_time_share.png" /> 

</head>
<body>
</body>
</html>

Bellow is my code where I am replacing:- og.likes ---to--->appnamespace:play("play"is my action).

Is i am doing any thing wrong here ? please let me know.

function customshare()
{
FB.ui({
method: 'share_open_graph',
action_type: 'appnamespace:play',
action_properties: JSON.stringify(
{
  object:'https://example.com/appnamespace/cricket.html',
})
},
 function(response){});
 }

However i am getting the below error while executing the FB.ui method: 'share_open_graph' for custom share.

在此输入图像描述

I got my problem solved by simple changing this:-

object:'https://example.com/appnamespace/cricket.html',

To

cricket:'https://example.com/appnamespace/cricket.html',

你需要在对象的url字段中提到url我想那时只有它会起作用并且从你的错误消息中看到缺少cricket字段

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM