Я использую кнопку отправки, чтобы поделиться ссылкой и сообщением в приложении, но я получаю эту ошибку, когда пытаюсь прочитать сообщение:
Attachment Unavailable The privacy settings on this attachment do not allow you to view it.
Я получаю сообщение, но не вижу вложения. Вложение должно быть ссылкой!
Вот код, который я использую:
<div id="fb-root"></div> <script>(function(d){ var js, id = 'facebook-jssdk'; if (d.getElementById(id)) {return;} js = d.createElement('script'); js.id = id; js.async = true; js.src = "//connect.facebook.net/en_US/all.js#xfbml=1"; d.getElementsByTagName('head')[0].appendChild(js); }(document)); </script> <div class="fb-send" data-href="http://apps.facebook.com/app_profile?id=<?php echo $id;?>" data-font="arial" ></div>
есть идеи?
редактировать:
Я прочитал больше об этой кнопке Send
, и я настроил все Open Graph
и добавленный Privacy Policy URL
в моем приложении. Кнопки Like
и Share
работают нормально
Я также добавил тег ref
и в основном пробовал все.
Это ошибка в facebook?
edit2:
мой код fbml:
<div id="fb-root"></div> <script>(function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0]; if (d.getElementById(id)) {return;} s = d.createElement(s); js.id = id; js.src = "//connect.facebook.net/en_US/all.js#xfbml=1"; fjs.parentNode.insertBefore(js, fjs); }(document, 'script', 'facebook-jssdk'));</script> <fb:send ref="some_ref>" href="http://apps.facebook.com/profile?id=<?php echo $user_profile['id'];?>&ref=some_ref" font="arial">Send private message</fb:send>
Я получаю этот код просто от кнопки «Отправить» – разработчики Facebook, но отредактировал немного, чтобы соответствовать вашему делу.
Эта часть должна быть в теге body
<div id="fb-root"></div> <script> (function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0]; if (d.getElementById(id)) {return;} js = d.createElement(s); js.id = id; js.src = "//connect.facebook.net/en_US/all.js#xfbml=1"; fjs.parentNode.insertBefore(js, fjs); }(document, 'script', 'facebook-jssdk')); </script>
Значение «ref» может содержать буквенно-цифровые символы и некоторую пунктуацию (в настоящее время + / = -.: _)
<fb:send ref="some_ref" href="http://apps.facebook.com/profile?id=<?=$user_profile['id'];?>" font="arial">Send private message</fb:send>
Прежде чем использовать FBML, убедитесь, что вы добавляете это пространство имен xml в тег «html»
<html xmlns:fb="https://www.facebook.com/2008/fbml">
если вы используете XHTML как DOCTYPE, вы можете использовать
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:fb="http://www.facebook.com/2008/fbml">
Убедитесь, что у вас нет двойного FB.init
. У меня такая же ошибка, и я обнаружил, что я положил FB.init
на верх страницы и в нижний колонтитул.
У вас есть 1 ошибка в вашем коде ref = "some_ref>" должна быть ref = "some_ref"
также, пожалуйста, проверьте, что параметр href доступен с сервера fb.