14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
# File 'lib/microkit/http_client.rb', line 14
def post (action, uri = nil, post_data = nil)
data = {"options" => {"service" => Config.instance.get('service'), "action" => action, "lang" =>"ruby"}}
if Config.instance.get("user") then
data["user"] = Config.instance.get("user")
end
if post_data then
data = data.merge(post_data)
end
if Config.instance.get("key_vars_values") then
data["key_vars_values"] = Config.instance.get("key_vars_values")
end
uri = URI("#{Config.instance.get("http") ? 'http' : 'https'}://#{Config.instance.get("base_url")}#{Config.instance.get("port") != "" ? ":#{Config.instance.get("port")}" : ""}/#{Config.instance.get("version")}/#{uri ? uri : ""}")
https = Net::HTTP.new(uri.host,uri.port)
https.use_ssl = !Config.instance.get("http")
req = Net::HTTP::Post.new(uri.path, = {'Content-Type' =>'application/json','Authorization' => "Bearer #{Config.instance.get("api_key")}"})
req.body = data.to_json
res = https.request(req)
return res.body
end
|