Как интегрировать Google+ Share функциональность с ruby ​​на рельсы приложения?

У меня есть простой шаблон erb со следующим HTML-кодом и включенным JavaScript.

<a class='share_on_gplus g-plus' data-social-action='share' data-medium='googleplus' data-content='q_name' href='https://plus.google.com/share?url=encodeURIComponent(URL).replace('%20','+') onclick="javascript:window.open(this.href,'','menubar=no,toolbar=no,resizable=yes,scrollbars=yes,height=auto,width=600');return false';">Share with Google+ </a>

<script src="https://apis.google.com/js/client.js"></script>
<script type="text/javascript">
    function load() {
        gapi.client.setApiKey('XXXXXXXXXXXXXXXXXXx');

      }

    window.___gcfg = {
    lang: 'en-US',
    parsetags: 'onload'
    };

  (function() {
    var po = document.createElement('script'); 
    po.type = 'text/javascript'; 
    po.async = true;
    po.src = 'https://apis.google.com/js/plusone.js?onload=load';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s);
  })();

</script>

Мой сервис Google +API уже включен. Когда я нажимаю кнопку "Поделиться" во всплывающем окне "Google Plus", я получаю сообщение об ошибке:

При сохранении вашего сообщения возникла проблема. Пожалуйста, попробуйте еще раз. Я не могу поделиться на Google+. Как мне решить эту ошибку?

2 ответа

Решение

На самом деле мне нужно упомянуть реальное доменное имя в параметре URL, и проблема будет решена. Это оно!!!

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

1) Ваше значение href открывается одинарной кавычкой, закрывается двойной кавычкой и содержит несколько одинарных кавычек.

2) Код общего доступа Google и бот используют атрибуты, которые прикреплены к элементу общего доступа, чтобы точно определить, что является общим, в том числе атрибут href. Похоже, вы пытаетесь открыть окно самостоятельно и манипулировать этим способом.

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

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