0

如何在 google+ 信息流上发布交互式帖子?

我正在尝试从 asp.net Web 应用程序在 google 流上发布一些自定义数据。

这是我正在使用的代码。

这是 .aspx 页面:告诉你的朋友

这是我正在使用的脚本:

var moment = {
        "name": "sample",
        "Description": "Hi sample post",
        "Thumbnail": "logo",
        "image": "http://prayati.com/Images/PrayatiLogo.jpg"
    };
    gapi.auth.init(signinCallback);
    function signinCallback(authResult) {
        if (authResult['access_token']) {
            gapi.interactivepost.render('inter', options);
            //gapi.interactivepost.render(moment, authResult['access_token'])
            gapi.interactivepost.go(moment)
            document.getElementById('myBtn').setAttribute('style', 'display: none');
        } else if (authResult['error']) {
            alert(authResult['error']);
        }
    }
    var options = {
        contenturl: 'https://plus.google.com/pages/',
        contentdeeplinkid: '/pages',
        clientid: '263087742134.apps.googleusercontent.com',
        cookiepolicy: 'single_host_origin',
        prefilltext: 'Create your Google+ Page too!',
        calltoactionlabel: 'SHARE',
        calltoactionurl: 'http://plus.google.com/pages/create',
        calltoactiondeeplinkid: '/pages/create'
    };
4

1 回答 1

0

第一个可能也是最重要的问题是您data-calltoactionurldata-contenturl. 这些必须是相同的域,请参阅data-contenturl文档

我相信这是你的主要问题,你的例子中还有其他问题:

您似乎混淆了两个不同的功能:应用程序活动(又名时刻)和交互式帖子。此外,您似乎正在尝试进行身份验证,交互式帖子按钮也是一个登录按钮,请注意它的data-callback参数。您无需单独调用gapi.auth.init()

最简单的方法是使用 HTML 按钮并删除对 gapi.interactivepost.* 的调用,除非您有一个动态应用程序需要插入具有良好控制的按钮。

您没有发布您的 JavaScript API 包含的代码,请确保它将 API 脚本加载为https://apis.google.com/js/client:plusone.js.

这是一个正确且简化的按钮:

<button class="g-interactivepost" 
  data-clientid="xxxxxxxxxx.apps.googleusercontent.com"
  data-contenturl="http://localhost:52022/Jaswanth"
  data-cookiepolicy="single_host_origin"
  data-calltoactionlabel="INVITE"
  data-calltoactionurl="http://localhost:52022/create"
  data-prefilltext="Best site EVER!"
  data-callback="signinCallback"
  data-requestvisibleactions="http://schemas.google.com/AddActivity"
  data-scope="https://www.googleapis.com/auth/plus.login">
    Tell your friends
</button>
于 2013-06-14T16:22:14.627 回答