问题标签 [google-api-ruby-client]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
457 浏览

ruby - 无法在 ruby​​ 中模拟对 google 日历 api 的服务到服务 oauth 请求

嗨,我在深夜破解和测试 Ruby 的 google api 客户端。

我可能是由于误解而误入歧途。

我已经做了什么

  • 我已经在谷歌开发者控制台中创建了一个应用程序
  • 我启用了日历 api
  • 我创建了服务器密钥并下载了 p12。
  • 我设法使用google api explorer和浏览器oauth查看了日历元数据,因此确认了id并且权限也被确认为浏览器的oauth可以查看元数据

我正在尝试做的事情:

我正在尝试从私人共享日历中获取元数据(稍后我将尝试事件),在该日历中,我在 Ruby 中的工作帐户的 google 应用程序中具有读取权限(通过组),提供服务身份验证服务

我是如何努力做到的

使用此代码:

收集的结果

当我这样做时会得到 404,类似于“那个日历不存在”

但是,如果我更改每个“主要”的 id

我得到:

这似乎是一个日历,但它就像出现在服务器密钥“电子邮件”字段中的“电子邮件颁发者”帐户的默认日历

我也尝试向其中添加一个:person = 'email'字段,client.authorization但随后在创建身份验证令牌时出现错误

我找不到从该@developer.gserviceaccount.com 访问其他邮件帐户的方法,所以我做错了什么?

0 投票
1 回答
163 浏览

ruby-on-rails - 如何使用 ruby​​ 客户端访问包含 siteURL 的 Google API 方法?

我正在尝试使用 ruby​​ 客户端访问 Google Webmaster Tools API:

我尝试访问的 API 方法使用方法名称中的 siteurl。这不起作用,因为语法冲突。

有没有办法访问包含 URL 的 API 方法名称?

0 投票
0 回答
233 浏览

authentication - 使用 YouTube API 的服务器到服务器调用

我需要访问 YouTube API,作为单个帐户进行身份验证,以便我可以访问其视频、标签、评论等。

由于Public API Access标签对公众不可见,因此密钥似乎没有涵盖这种情况。是否有必要实施 OAuth 只是为了验证一个帐户?我不打算让其他用户使用网络应用程序进行身份验证 - 只有属于网络应用程序所有者的 YouTube 帐户。

我有 YouTube 帐户的用户名和密码。有没有办法以单用户身份使用 API 验证一个 YouTube 帐户?

服务帐户似乎最适合我,但显然v3API 不支持它们。

0 投票
0 回答
342 浏览

ruby-on-rails - Rails 中的 Google DoubleClick AdExchange API 集成

我正在使用google-api-ruby-client gem 与 Google DoubleClick AdExchange Seller API 进行交互。我遵循了Google Developers建议的程序。我设置了重定向 URI 和其他必要的配置。请找到下面的代码片段,这是一个获取授权和创建服务对象的服务设置方法

当我运行这个方法时,我成功地重定向到谷歌接受页面, (https://accounts.google.com/o/oauth2/auth?access_type=offline&client_id=XXX...) 但是一旦我点击接受按钮,网页就会继续加载。奇怪的是,当我在 Rails 服务器上按 Ctrl+C 时,网页会重定向到我在 oauth 设置中设置的重定向 URI。

我非常感谢您能提供的任何帮助。

0 投票
0 回答
109 浏览

ruby - 伪造google api客户端登录

经过一番努力,我终于得到了一个混合流程,可以使用 Google Api Ruby 客户端登录。

现在我开始验证我的登录是否仍然像使用 OpenId 时那样工作。但是,我所有使用 OpenId 伪造登录的测试现在都失败了。

我曾经使用具有“测试模式”的 OmniAuth 登录。但是,我删除了该依赖项以使用新的登录方法。

那么,为了测试其余功能,我将如何确保我的测试已登录?

我的代码基于 goolge 文档的快速入门中给出的示例:https ://developers.google.com/+/quickstart/ruby

0 投票
0 回答
373 浏览

ruby-on-rails - Google 日历 API 推送通知 - 从 API 更新会创建不必要的通知

我有一个使用 Google 日历 API 的 rails 应用程序,并为用户与我的应用程序共享的每个日历提供推送通知。

当用户从应用程序更新事件时,它会创建一个updatedEvent对 API 的请求。因为日历被列为推送通知,所以它会推送有关日历事件(当然是同一事件)的一些更新的通知。我是否缺少可以使通知静音的属性?

当我收到有关更改的通知并从响应中获取更改的项目时,我将etag事件的事件与我从 API 响应中获得的事件进行比较,因此我设法避免再次更新。

但这仍然是不必要的更新。

0 投票
1 回答
262 浏览

ruby - Google 自定义搜索 api 结果中的差异

我首先尝试标准的网络搜索,如下图,它返回476个结果

在此处输入图像描述

我有自定义的Google ruby​​ api 客户端,并有自定义搜索引擎和 api 密钥设置。

这是我的查询

我得到的结果在计数上完全不同,可能是什么原因?

0 投票
1 回答
1550 浏览

ruby-on-rails - 谷歌日历同步令牌过期

嗨,我正在尝试将谷歌日历与我的本地日历同步

我目前的设置是这样的

我通过谷歌登录并获取我的主要日历事件并在本地存储,我还保存了谷歌在最后一页提供的同步令牌。

所以我创建了一个频道来观看日历,每次日历发生变化时它都会向我发送通知,但我想要的是如果我再次发送请求时获取更改的数据,它只是说令牌已过期我该如何解决这个问题。

我正在使用 ruby​​ on rails 和 google api gem

谢谢你

0 投票
1 回答
249 浏览

ruby-on-rails - 在 Rails 应用程序中从 Google Provisioning API 迁移到 Directory API

我目前正在维护一个依赖于 Google Provisioning API 的 Rails 应用程序。不幸的是,这个 API 很快就会被淘汰,取而代之的是 Admin SDK 和 Directory API。

它使用用户名和密码组合登录 API 并创建 Google 群组。这是一个例子:

新的 API 使用 OAuth 协议,该协议确实有一个客户端凭据流,允许简单地使用用户名/密码组合,但根据OAuth 2.0 入门一书:

虽然前面的段落描述了此流程的一些潜在用例,但这些提供商(Google 和 Amazon)尚未在 OAuth 2.0 中实施客户端凭据流程。

简而言之,为了使用较新的 API,更新上述代码的最直接方法是什么?提前致谢。任何帮助,将不胜感激。

0 投票
0 回答
509 浏览

ruby-on-rails - youtube上传的Google ruby​​ api客户端错误

我正在尝试设置一项服务来帮助管理用户的 youtube 帐户,包括即使在用户未登录的情况下也可以预定的视频上传。我在身份验证方面遇到了一些奇怪的问题,我似乎找不到方法要解决这个问题。

我的omniauth初始化程序:

我的授权代码首当其冲:

所有这些代码似乎都有效。用户可以登录,并且我已验证是否请求了适当的权限。还会提示用户给予离线同意。我取回了一个刷新令牌,当当前令牌过期时,我可以使用刷新令牌获取新的访问令牌。那里没有问题。

当我在用户不存在时尝试将视频上传到 youtube 时出现问题:

这是谷歌回击的地方Google::APIClient::AuthorizationError: Unauthorized

根据谷歌文档,我可以通过运行测试我拥有的访问令牌:

对我来说,这会返回:

我已确保已在 google api 控制台中将以下 api 添加到我的项目中:联系人、google+、youtube 数据、youtube 分析。我还检查了我的所有环境变量是否都已正确设置。

不太确定从这里去哪里。任何指导将不胜感激!

我的导轨版本:4.1.6