0

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"=>["Wed, 21 Sep 2016 13:35:37 GMT"], "cache-control "=>["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"=>["Wed, 21 Sep 2016 13:14:18 GMT "]、"host"=>["ope-apigee-private"]、"content-type"=>["application/json"]、"authorization"=>["Basic cWVnaUJlR0xhcndaYzZ0R1dtS1JqUFE2d0FBOVNEWW46SFJ1SGFURUJlOHR2aHlTOA=="]、"x- forwarded-for"=>["213.181.226.205, 192.168.70.3", "192.168.9.45"], "x-forwarded-host"=>["api.orange.com"], "x-forwarded-server" =>["OPOPECBALLAP04"]、"コンテンツの長さ"=>["86"]、"接続"=>["閉じる"]}>

使い方がわかりません 公式の方法を読んで、Curl を使用して動作しましたが、Rails では実行できません。

4

0 に答える 0