Tag: 谷歌 的OAuth

未定义的方法’更改’为:更新时间戳值时的Fixnum

我正在项目中使用Google的OAuth2 API,使用Omniauth可以轻松创建初始帐户,但是为了使用API​​我需要刷新access_token,因为它们只有一个小时有效,但我是刷新令牌时更新expires_at值时出现问题。 这是我用于请求令牌刷新的代码: require ‘oauth2’ class Identity ‘https://accounts.google.com’, :authorize_url => “/o/oauth2/auth”, :token_url => “/o/oauth2/token” } response = OAuth2::AccessToken.from_hash(client, :refresh_token => self.refresh_token).refresh! self.update_attribute(:access_token, response.token) self.update_attribute(:expires_at, Time.at(response.expires_at)) end end end 我得到一个undefined method ‘change’ for 1359936923:Fixnum最终update_attribute行上的undefined method ‘change’ for 1359936923:Fixnum错误:expires_at(我从上面的行中拆分它以尝试找出问题)。 我已经尝试了上面的update_attribute调用,还有一个简单的self.expires_at = response.expires_at ,有和没有Time.at转换,但所有组合都会导致相同的错误。 :expires_at属性是Timestamp数据类型。 我已经检查了response变量,它包含正确的时间戳,据我所知: — !ruby/object:OAuth2::AccessToken … expires_in: 3600 expires_at: 1360019618 options: :mode: :header :header_format: Bearer […]