Как преобразовать эту команду curl в httparty в Rails? Использование Orange SMS Api
Я пытаюсь использовать Orange SMS API, я прочитал, как использовать его здесь.
Я хочу использовать этот API-интерфейс из приложения Rails.
Я хочу преобразовать эту команду curl в код httparty.
curl -X POST \
-H "Authorization: {authorization_header}" \
-d "grant_type=client_credentials" \
https://api.orange.com/oauth/v2/token
Я искал много решений, но все не удалось:(
вот последняя попытка
HTTParty.post(
"https://api.orange.com/oauth/v2/token",
headers: {
"Content-Type" => "application/x-www-form-urlencoded",
"Authorization" => "Basic {authorization_header}",
"Accept" => "application/json"
},
body: {
:grant_type => "client_credentials"
}.to_json
)
но я получаю эту ошибку:
Ошибка 504 Время ответа сервера истекло
\n Сервер не ответил вовремя.\n\n", @response=#, @headers={"date"=>[" Ср, 21 сен. 2016 г. 13:35:37 GMT"], " контроль кэша "=>["no-cache"], "content-type"=>["text/html; charset=UTF-8"], "connection"=>["close"], " Transfer-Encoding"=>["chunked"]}>IRB (основной):073:0>
Я тоже так пробовал
access_token = HTTParty.post(
"https://api.orange.com/oauth/v2/token",
headers: { "Content-Type" => "application/x-www-form-urlencoded", "Authorization" => "Basic {authorization_header}"},
query: { "grant_type" => "client_credentials" }
)
но я получаю эту ошибку:
=> # "invalid_grant", "error_description" => "Недопустимый параметр grant_type."}, @response=#, @headers={"date"=>["Ср, 21 сен. 2016 г. 13:14:18 GMT"], "host"=>["ope-apigee-private"], "content-type"=>["application/json"], "authorization"=>[" Базовая версия cWVnaUJlR0xhcndaYzZ0R1dtS1JqUFE2d0FBOVNEWW46SFJ1SGFURUJlAS== = x = 2 forwarded-for"=>["213.181.226.205, 192.168.70.3", "192.168.9.45"], "x-forwarded-host"=>["api.orange.com"], "x-forwarded-server"=>["OPOPECBALLAP04"], "content-length"=>["86"], "connection"=>["close"]}>
Я не знаю, как его использовать, я читал официальным способом, и он работал с использованием Curl, но я не могу сделать это в Rails.