【问题标题】:Google+ API : Get Profile's currentLocationGoogle+ API:获取个人资料的当前位置
【发布时间】:2013-08-01 05:13:00
【问题描述】:

我目前正在构建测试并尝试获取 google+ 用户位置。我正在对自己进行测试,并将我的位置公开。

我原本打算使用谷歌纵横,但由于谷歌几天后将弃用此 API,我唯一的选择是使用 Google+ API。

参数currentLocation was added a few months ago

因此,我试图得到它。但无法做到。

我已经在我自己的服务器上使用 PHP API 和 Oauth2.0 的 JS API 进行了测试,但是这个该死的参数永远不会被发回。我可以得到任何其他参数,但绝对不是那个。

然后我在google+ explorer中测试过,但是same thing here, nothing came out

有人遇到过类似的问题吗?

我知道它可能来自哪里:

  1. Oauth2.0 是否不允许我访问此信息(我尝试过 任何可能的数据范围)
  2. 此功能是否存在错误?
  3. 是否仅限于经过验证的用户?
  4. 或者只是不可能?

谢谢!

【问题讨论】:

  • 目前,这不起作用,如果我可以让 currentLocation 值返回,我会在答案中告诉你。当它起作用时,如果当前位置是从用户的个人资料中公开共享的,那么您将能够获得它。
  • 有没有人进一步了解这个?我可以看到它似乎也不适合我。
  • 感谢您的回复,让我们等一下,我也在关注这个帖子:code.google.com/p/google-plus-platform/issues/…
  • 也正在等待填充 currentLocation 属性。我试过这个链接:developers.google.com/+/api/latest/people/get

标签: geolocation oauth-2.0 google-plus


【解决方案1】:

只有在生成 OAuth 令牌时已授予您访问其位置数据的权限的用户才能访问位置数据。

您必须在scope parameter. 中专门请求访问位置数据

【讨论】:

  • 链接的文档没有具体请求访问位置的范围的详细信息
  • 我已经探索了上面的这个“解决方案”,发现它几乎没用。唯一可能提供位置的东西是“时刻”API,它已被谷歌确认破坏,它说他们会修复它,但当然,没有预期的日期。
  • @atrioom,不幸的是,这并不是真正的解决方案:(正如marty331所说的那一刻api被破坏了。我终于取消了我正在从事的项目,因为目前没有办法实现这一点。仍在寻找长期的解决方案或修复方法。
  • 很遗憾这个有趣的 API 到现在都被破坏了。而且没有给出参考或解释。其他 Google+ API 也坏了,例如生日..
  • Moment API 现已弃用。
【解决方案2】:

我认为 r.placesLived 只会给出他的位置,但会给出用户的位置,也不会给出确切机器的位置。可以记住,您需要有地址。但是,它需要寻找另一个令牌来验证用户的确切位置。进入它可能只需要更多的跟踪器,而不仅仅是一个位置。

【讨论】:

    【解决方案3】:

    这是一个老问题,但仍然有效。即使字段“currentLocation”被列为有效回复People object field,也无法访问字段数据。

    G+ repository 被报告为问题,但目前没有答案。

    如果您仍在尝试获取用户的当前位置,请尝试以下 sn-p,不确定这是否是最佳选择,但它有效:):

    注意:“r”保存client.request()响应数据(API调用)

    r.placesLived.forEach(function(l) {
       if (l.primary) 
        console.log(l.value);
    });
    

    希望这会有所帮助。 干杯。

    【讨论】:

      猜你喜欢
      • 2020-09-08
      • 1970-01-01
      • 2021-01-16
      • 1970-01-01
      • 1970-01-01
      • 2015-05-09
      • 2018-08-25
      • 1970-01-01
      • 2015-07-11
      相关资源
      最近更新 更多