Ruby open-uriで中括弧(波括弧)が入ったアドレスを取得しようとすると失敗する(https使用時)

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']
}