Facebook anpassad berättelsedelning med JavaScript sdk() visar fel (Åtgärd kräver minst en referens)


Jag använder JavaScript SDK för en av mina Facebook Canvas-spelapplikationer. Jag försöker implementera en anpassad berättelsedelning dialog för att posta en berättelse på användarens vägg.

Informationen som finns på utvecklarsidan är oklar och begränsad. Koden nedan är för att dela en anpassad berättelse med hjälp av Open Graph API. Koden nedan finns på länken till Facebooks utvecklarsida som anges (https://developers.facebook.com/docs/sharing/reference/share-dialog). Den kod som Facebook tillhandahåller fungerar bra eftersom den använder en fördefinierad action_type.

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

Jag har skapat ett objekt (cricket) och en handling (play) för anpassad berättelse på FB Developer-konsolens flik för Appens Open Graph. Jag har skapat ett självhostat objekt (HTML-sida) som heter cricket.html. Nedan är innehållet på min HTML-sida. Jag verifierade HTML-sidan på Open Graph Object Debugger. Graph Object Debugger visar mig all information som jag har gett utan några fel eller varningar.

<!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>

Nedan är min kod där jag ersätter:- og.likes ---till--->appnamespace:play("play"är min åtgärd).

Gör jag något fel här? Vänligen låt mig veta.

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){});
 }

Jag får dock följande felmeddelande när jag kör FB.ui-metoden: 'share_open_graph' för anpassad delning.

Svar #1

Jag fick mitt problem löst genom att enkelt ändra detta:-

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

Till

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

Svar #2

Du behöver nämna URL:en i URL-fältet på objektet antar jag, då kommer det bara att fungera och cricketfältet saknas som det syns från ditt felmeddelande