Подтвердить что ты не робот

Facebook и твиттер Twitter, вызывающие проблемы с перекрестными доменами

Я использую кнопку twitter tweet, а кнопка facebook как кнопка

<a href="#" onclick="location.href='http://twitter.com/share'; return false;" 
   class="twitter-share-button"
   data-url="http://example.com"
   data-text="some text"
   data-count="horizontal"
   data-via="someone">Tweet
</a>
<script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script>

<script src="http://connect.facebook.net/en_US/all.js#xfbml=1"></script>
<fb:like 
   class="fbShare" 
   href="#" onclick="location.href='http://example.com'; return false;" 
   font="" send="true" 
   layout="button_count" 
   show_faces="false">
</fb:like>

Но оба они выплевывают Ошибки перекрестного домена, Не один или два, но непрерывно.

фактические ошибки (с подстановками)

Небезопасная попытка JavaScript для доступа с URL-адресом https://www.facebook.com/plugins/like.php?channel_url=http%3A%2F%2Fstatic.ak.fbcdn.net%2Fconnect%2Fxd_proxy.php%3Fversion%3D3%23cb%3Df3cde04b84%26origin%3Dhttp%253A%252F%252Fexample.com%252Ff20b9fb1fc%26relation%3Dparent.parent%26transport%3Dpostmessage&href=http%253A%252F%252Fexample.com%252F&layout=button_count&locale=en_US&node_type=link&sdk=joey&send=true&show_faces=false&width=150из фрейма с URL-адресом http://example.com/. Домены, протоколы и порты должны соответствовать.

Небезопасная попытка JavaScript для доступа с URL-адресом http://platform0.twitter.com/widgets/tweet_button.html?_=1308700896075&count=horizontal&id=twitter_tweet_button_0&lang=en&original_referer=http%3A%2F%2Fexample.com%2F&text=some text & url = http% 3A% 2F% 2Fexample.com% 2F & через = кто-то из фрейма с URL-адресом http://example.com/. Домены, протоколы и порты должны соответствовать.

4b9b3361

Ответ 1

Кажется, это ошибка с кодом кнопки Twitter, который вы, вероятно, захотите войти в Twitter. Кажется, что он пытается пересечь каждый объект dom на странице и не может получить доступ к объекту iframe Facebook. Например, если вы также добавите кнопку Google +1, она теперь добавит дополнительное подобное сообщение, но относится к URL-адресам Google.

Функциональность, похоже, не влияет, поэтому я просто проигнорирую ее. Любой сайт, использующий эту кнопку Tweet, а также другой iframe с другого сервера (например, кнопка Facebook/G +), также будет иметь такую ​​же проблему (например, попробуйте любую страницу на mashable.com). Если вы не хотите просто игнорировать его, вы можете удалить ссылку на javascript Twitter и создать пользовательскую кнопку Tweet, как указано на странице Tweet, используя javascript для всплывающего формата этого URL: http://twitter.com/share?url=http%3A%2F%2Fdev.twitter.com%2Fpages%2Ftweet-button, с недостатком этого является то, что количество твитов не будет отображаться на вашей странице.

Ответ 2

Я знаю, что этот вопрос чертовски старый. Но поскольку эта проблема с Twitter по-прежнему актуальна, в качестве ответа на вопрос BK я создал пользовательскую кнопку твиттов, которая выглядит точно так же, как и JS API Twitter, но не использует ее и по-прежнему включает в себя счетчик акций! Итак, для тех, кого это интересует, я загрузил их в свой GitHub.

Демо: http://fiddle.jshell.net/eyecatchup/Th6P2/2/show/
Код: https://github.com/eyecatchup/tweetbutton