【问题标题】:Use oauth2 to retrieve Google Places client_id使用 oauth2 检索 Google 地方信息 client_id
【发布时间】:2013-01-12 01:23:51
【问题描述】:

是否可以使用 oauth2 检索 Google 地方信息 client_id?我可以检索包括 id 和 Google+ 个人资料网址在内的 Google+ 信息,但我需要一种方法将 oauth2 用户与 Google 地方信息“client_id”联系起来。

我已经能够包含 oauth2 弹出窗口中列出的 Places 范围,并要求用户授予访问资源的权限,但无法弄清楚如何检索经过身份验证的用户的 client_id。

范围:

var scopes = 'https://www.googleapis.com/auth/plus.me https://maps.google.com/maps/feeds/ https://www.googleapis.com/auth/places';

Google+ API 加载

虽然我可以成功检索plus数据,但是places api似乎没有暴露任何数据。这是我尝试过的:

function makeApiCall() {
    /* the plus api does retrieve data, but a similar call to places does not
    gapi.client.load('plus', 'v1', function () {
        var request = gapi.client.plus.people.get({
            'userId': 'me'
        });
        request.execute(function (resp) {
            $(".google-signin").find("img").attr('src', resp.image.url).css('height', '32').css('width', '32');
            $("#login-msg").text('Welcome: ' + resp.displayName);
            $("img.vote").css('visibility', 'visible');
        });
    });
    */
    gapi.client.load('places', 'v1', function () {
        debugger
        // the gapi.client does not contain a "places" object 
        var request = gapi.client.places.get({
            'userId': 'me'
        });
        request.execute(function (resp) {
            debugger
        });
    });
}

感谢您对此问题的任何澄清。

澄清编辑

也许我没有说清楚。 Google Places API 鼓励创建与特定地点(商业)相关联的事件。我们正在根据 Google Places API searchdetails 响应生成列表(top-60.bunkerhill.com 的原型跟随一个或多个链接)我们希望企业能够将事件添加到它们的关联列表中,但如果不首先以某种方式将 Places Detail 响应数据与 Google Sign-On 相关联,则不允许这样做;还是我在这里遗漏了一些重要的东西?

所以问题是“用户是否可以登录到任何可用的 Google OAuth API,该 API 提供了一些可用于将用户与 Places Details 条目相关联的数据?

【问题讨论】:

    标签: javascript google-maps-api-3 oauth-2.0 google-plus google-places-api


    【解决方案1】:

    Google Places API 与 G+ API 不同。

    查看https://developers.google.com/places/documentation/ 以获取有关访问地方数据的说明(请注意,您没有为此 API 使用 OAuth - 您只需在您的 http 请求中包含来自 developers.google.com/console 的密钥)。

    【讨论】:

    • 请忽略之前的评论。我已对我的问题进行了澄清,希望您能对这个问题有所了解。
    【解决方案2】:

    关于已澄清的问题:不,用于创建事件的 Places API 身份验证和授权仅通过开发人员(和您的 API 密钥),而不是可能与您的应用程序交互的最终用户。

    对于这个特定示例,您(开发人员)可以创建与地点相关联的事件,但您有责任进一步关联您希望与创建该事件相关联的最终用户,并将元数据存储在您的应用程序中(如果您愿意的话)。

    是否有理由让 Places API 本身了解这种对您的应用程序有益的关系?

    【讨论】:

    • 感谢您的及时回复。是的,我认为提供类似于为 Google+ 提供的关联具有很大的价值。使用我们的应用程序,登录后,我们可以找到相关的 Places 商家(如果包含在列表中),并允许用户输入他们自己的活动或特殊(限时)优惠。
    • “查找关联的地点”是指您还想搜索由登录用户过滤的地点(例如,有该用户创建的事件的地点?)
    • 我们显示由“textsearch”查询过滤的 60 个地点的列表,例如。查询=“整形+外科医生+in+san+francisco”。我们目前显示与给定业务相关联的任何事件,但由于这些事件必须由我们的应用程序创建,我们需要一种方法来使经过 Google OAuth 身份验证的用户能够管理显示为 60 个列表的任何相关地点条目的事件。(A指向“管理事件”的链接将出现在与登录用户关联的地方条目上。
    猜你喜欢
    • 2018-04-06
    • 1970-01-01
    • 2018-08-03
    • 1970-01-01
    • 2016-07-09
    • 1970-01-01
    • 1970-01-01
    • 2018-08-19
    • 2017-10-11
    相关资源
    最近更新 更多