Ruby webAPIにパラメーターをつけてgetする
RubyでwebAPIにパラメーターをつけてgetするまでの手順を記述してます。Rubyのバージョンは3.0.0となります。
環境
- OS CentOS 7.9.2009 (Core)
- Ruby 3.0.0
get実行
パラメーターをつけてgetする場合は「URI.encode_www_form」を使用します。
params = URI.encode_www_form({ param1: "a", param2: "b", param3: "c" })
これでパラメーターを使用して、webapiからgetが可能になります。
require "net/https"
require "uri"
require "json"
# URI
BASE_URL = "https://url"
GET_URI = "#{BASE_URL}/api/v1/param?"
# パラメーターを設定
params = URI.encode_www_form({ param1: "a", param2: "b", param3: "c" })
# URL構成要素を取得 (uri.host, uri.port)
uri = URI.parse("#{GET_URI}#{params}")
# セッション開始
http = Net::HTTP.new(uri.host, uri.port)
# SSL接続時の設定
http.use_ssl = true
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
# get実行
req = Net::HTTP::Get.new(uri.request_uri)
begin
# リクエスト開始
res = http.request(req)
# jsonにパース
results = JSON.parse(res.body)
rescue => e
p e.message
end
# ステータスコードを取得
p res.code, res.msg
-
前の記事
PostgreSQL 「DETAIL: 他にこのデータベースを使っている 1 個のセッションがあります。」が発生した場合の対処法 2021.10.19
-
次の記事
エラー「mount error(22): Invalid argument」が発生した場合 2021.10.19
コメントを書く