61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
|
# File 'lib/ne_api.rb', line 61
def post method: nil , model: nil, query: nil, fields: nil, get_key: nil, params: {}
raise NeAPIException, "no token!" if @access_token.nil? || @refresh_token.nil?
params = params.merge({wait_flag: 1}) if @wait_flag
if fields.present? && query.present?
post_args = {access_token: @access_token, refresh_token: @refresh_token, fields: fields}.merge(query).merge(params)
elsif fields.present?
post_args = {access_token: @access_token, refresh_token: @refresh_token, fields: fields}.merge(params)
elsif query.present?
post_args = {access_token: @access_token, refresh_token: @refresh_token}.merge(query).merge(params)
else
post_args = {access_token: @access_token, refresh_token: @refresh_token}.merge(params)
end
res = false
self.retry_num.times do
res =response(conn.post PATH_PREFIX+model.to_s+ "/" + method, post_args)
break if res != false
sleep(self.wait_interval)
end
if res == false
raise NeAPIException, "003001:Next Engineが大変混み合っています。APIの接続を#{self.retry_num}回、#{self.wait_interval}秒間隔でアクセスを試みましたが、失敗をしました"
return false
end
@access_token = res["access_token"] if res["access_token"].present?
@refresh_token = res["refresh_token"] if res["refresh_token"].present?
@access_token_end_date = res["access_token_end_date"] if res["access_token_end_date"].present?
@refresh_token_end_date = res["refresh_token_end_date"] if res["refresh_token_end_date"].present?
get_key.present? ? res[get_key] : res
end
|