小编y4k*_*4ku的帖子

OmniAuth使用谷歌oauth 2战略范围失败

我正在使用OmniAuthgoogle-oauth-2策略从谷歌获取日历数据.

如果我没有在scope字段中放置任何内容它工作正常,我得到没有auth/failure消息的默认信息,我可以正常使用该应用程序.

但是,当我添加一个范围时,如下例所示,我得到一个"auth/failure?message = invalid_credentials".

Rails.application.config.middleware.use OmniAuth::Builder do
    provider :google_oauth2, ENV['TEST_KEY'], ENV['TEST_SECRET'], { :scope => 'https://www.google.com/calendar/feeds/' }
end
Run Code Online (Sandbox Code Playgroud)

有什么我缺少的东西或我应该改变的东西?

ruby-on-rails google-calendar-api oauth-2.0 omniauth

13
推荐指数
2
解决办法
7205
查看次数

Google Calendar Ruby API

我正在开发一款需要更新Google日历的应用.

按照Google日历开发人员指南进行操作:

http://code.google.com/apis/calendar/v3/using.html#creating_events

event = {
  'summary' => 'Appointment',
  'location' => 'Somewhere',
  'start' => {
     'dateTime' => '2011-06-03T10:00:00.000-07:00'
  },
  'end' => {
     'dateTime' => '2011-06-03T10:25:00.000-07:00'
  }
}
result = client.execute(:api_method => service.events.insert,
                    :parameters => {'calendarId' => 'primary'},
                    :body => JSON.dump(event),
                    :headers => {'Content-Type' => 'application/json'})
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

TypeError (Expected body to respond to :each.):
Run Code Online (Sandbox Code Playgroud)

我也试过做event.to_json.

ruby google-api oauth-2.0 ruby-on-rails-3.1

3
推荐指数
1
解决办法
2610
查看次数