Я пытаюсь внедрить кнопку «Регистрация» для моего сайта. Основная цель: когда пользователь нажимает кнопку, откроется диалоговое окно общего доступа Facebook, и пользователи будут проверяться в специальном месте. Сообщение пользователя не будет автоматически отправлено, и сообщение не будет установлено, чтобы оно не нарушало политику Facebook. Как я знаю, это может случиться с рассказами Facebook Open Graph. Я добавил параметр «Место» в качестве типа объекта Open Graph. Я знаю, что, чтобы это сделать, моему приложению требуется разрешение «publish_actions», а мое приложение находится в режиме разработчиков, так что это не проблема. Я использую Javascript SDK для Facebook. Таким образом, код выглядит следующим образом:Facebook Check-in кнопка для моего сайта
Это OG разметки (задается Facebook):
<head prefix="og: http://ogp.me/ns# fb: http://ogp.me/ns/fb# place: http://ogp.me/ns/place#">
<meta property="fb:app_id" content="my-app-id" />
<meta property="og:type" content="place" />
<meta property="og:url" content="my-url" />
<meta property="og:title" content="my-place-name" />
<meta property="og:image" content="sample-url-image" />
<meta property="place:location:latitude" content="Sample Location: Latitude" />
<meta property="place:location:longitude" content="Sample Location: Longitude" />
и это функция, которая вызывает диалоговое окно акций (также дается Facebook):
function share()
{
FB.api(
'me/objects/place',
'post',
{'object': {
'og:url': 'my-url',
'og:title': 'my-place-name',
'og:type': 'place',
'og:image': 'sample-url-image',
'og:description': '',
'fb:app_id': 'my-app-id',
'place:location:latitude': 'Sample Location: Latitude',
'place:location:longitude': 'Sample Location: Longitude'
}},
function(response) {
// handle the response
// for example (using Jquery)
$('#element').append('shared');
}
);
}
и это как называется функция:
<span onclick="share()">click to share</span>
<div id="element"></div>
проблема в том, что код не работает и диалог доступа не открывается. Где моя ошибка?
Есть ли сценарий, который вы должны загрузить для кнопки совместного доступа? Я предполагаю, что если вы посмотрите в инструментах dev, вы увидите «Uncaught ReferenceError: FB.api not defined (...)» – tymcsilva
FB.api() вызывается после загрузки SDK для javascript Facebook. – webtech
Какие ошибки вы получаете в своей консоли? – tymcsilva