FB.ui share_open_graph дает неправильный ответ на мобильный

Моя кодировка, как показано ниже:

<!DOCTYPE>
<html>
    <head>
    <script src="https://connect.facebook.net/en_US/sdk.js"></script>
    <meta property="fb:app_id" content="1665615247095212" /> 
    <meta property="og:type" content="heppiheppi:shares" /> 
    <meta property="og:url" content="http://mywebsite.com" /> 
    <meta property="og:title" content="Walk-in" /> 
    <meta property="og:image" content="http://mywebsite.com/images/intro.jpg" />
    <meta property="og:description" content="Bring more customers" />
</head>
<body style='padding:0;margin:0;'>
    <div id="fb-root"></div>
    <script>
        FB.init({
              appId      : '1665615247095212',
              xfbml      : true,
              version    : 'v2.7'
            });

            function LaunchDialog(){
            FB.ui({
               method: 'share_open_graph',
               action_type: 'og.shares',
               action_properties: JSON.stringify({
                 object:'http://mywebsite.com',
               })
             },
             function(response) {
if (response && !response.error_message) {
  alert('Posting completed.');
} else {
  alert('Error while posting.');
}
});
        }
    </script>
    <a href="#" onclick="LaunchDialog();">Share now</a>
</body>
</html>

Если вы протестируете браузер на настольном компьютере, нажмите "Поделиться сейчас", откройте диалоговое окно "Поделиться", нажмите "Отмена /X", появится сообщение "Ошибка при публикации". Если тестирование выполняется в мобильном браузере, нажмите "Поделиться сейчас", откройте диалоговое окно "Поделиться", нажмите "Отмена /X", на нем отобразится "Публикация завершена". У кого-нибудь есть подсказки по этому вопросу?

3 ответа

Обновление с Facebook:

Команда совместного использования подробно изучила и определила, что расхождение связано с различными путями кода на нашей стороне для версии диалога для мобильных и настольных компьютеров.

Когда вы получаете идентификатор сообщения или сообщение об ошибке в объекте ответа, оно должно соответствовать документу, если пользователь вошел в ваше приложение и / или предоставил разрешение publish_actions

Во всех остальных случаях мы не документируем, каким будет ответ, и несоответствие, с которым вы сталкиваетесь, заключается в том, что иногда вы получаете пустой объект "ответа", а в других случаях вообще нет объекта ответа.

В настоящее время не планируется вносить какие-либо изменения, чтобы решить эту проблему, и вы не можете использовать отсутствие ответа в диалоговом окне, чтобы определить, была ли создана публикация.

Извиняюсь за задержку в получении определенного ответа здесь, но вы должны предположить, что текущее поведение останется в краткосрочной и среднесрочной перспективе;

Если будут внесены долгосрочные изменения, я думаю, что более вероятно, что ответ будет полностью удален, так как это будет соответствовать другим изменениям в этой области, чтобы не допустить сбора ресурсов и других стимулов для публикаций пользователей.

Команда Facebook подтвердила это как ошибку и передала это соответствующей команде для дальнейшего расследования.

Вы устанавливаете для og:type значение "heppiheppi:shares", создали ли вы этот тип объекта в своем приложении!?? Если это не так, установите его обратно на "сайт".

Другие вопросы по тегам