class BaiduAi::AccessTokenManager
Public Instance Methods
get_access_token()
click to toggle source
# File lib/baidu_ai/assess_token/assess_token_manager.rb, line 7 def get_access_token if @token && !token_expired? if BaiduAi.debug_mode && BaiduAi.logger BaiduAi.logger.debug "Using existing access-token #{@token}" end return @token end get_and_save_new_token end
Private Instance Methods
get_and_save_new_token()
click to toggle source
# File lib/baidu_ai/assess_token/assess_token_manager.rb, line 33 def get_and_save_new_token url = "https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id=#{BaiduAi.api_key}&client_secret=#{BaiduAi.secret_key}" response = JSON.parse(Net::HTTP.get(URI(url))) save_token response end
save_token(response)
click to toggle source
# File lib/baidu_ai/assess_token/assess_token_manager.rb, line 23 def save_token response @token = response['access_token'] @expires_in = response['expires_in'] @created_time = Time.now if BaiduAi.debug_mode && BaiduAi.logger BaiduAi.logger.debug "Saving acess-token #{@token}, expires_in #{@expires_in} seconds." end @token end
token_expired?()
click to toggle source
# File lib/baidu_ai/assess_token/assess_token_manager.rb, line 19 def token_expired? Time.now - @created_time > @expires_in end