API等を叩こうとして下記ようなコードを書いたのですが、
require 'open-uri'
request_url = 'request_url'
open(request_url)
中括弧{やパーティカルバー|が入っていると、このようなエラーを吐いてしまうようですURI::InvalidURIError: bad URI(is not URI?):
なので、このlibrary net/httpsライブラリを使用して下記のように書いたらうまく取得する事が出来ました。
httpsを使用しないときはlibrary net/httpを使用してポートを80番に変更すれば動きます。
require 'net/https'
require 'json'
host = 'graph.facebook.com'
request_url = 'request_url'
Net::HTTP.version_1_2
https = Net::HTTP.new(host, 443)
https.use_ssl = true
https.verify_mode = OpenSSL::SSL::VERIFY_NONE
https.start {|http|
response = http.get(request_url)
p JSON.parser.new(response.body).parse["og_object"]['engagement']['count']
}