如何在rails应用程序上集成谷歌+共享功能与ruby?

时间:2013-04-03 11:14:52

标签: ruby-on-rails google-plus

我有简单的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 popup中的分享按钮时出现错误:

  

保存帖子时出现问题。请再试一次。   我无法在谷歌+上分享。如何解决此错误?

2 个答案:

答案 0 :(得分:3)

如果这是代码中的剪切和粘贴,我认为至少存在两个问题:

1)您的href值以单引号打开,以双引号结束,并且有几个单引号作为其中的一部分。

2)Google共享代码和机器人使用附加到share元素的属性来确定共享的内容,包括href属性。看起来你正试图自己弹出一个窗口并以这种方式操纵共享。

我首先尝试执行更基本的共享按钮(如herehere所述)并确认它可用于共享页面。如果确实有效,那么你可以从那里开始剪裁,但我不认为打开一个新窗口会按照你想要的方式工作。

答案 1 :(得分:0)

实际上我需要在url选项中提到真正的域名,问题就解决了。就是这样!!!