表題の通りネタ
環境
faraday (0.15.4)
実演
下記の用にクライアントクラスを作る
client = Faraday.new do |faraday| faraday.response :logger #ログが見れる用に faraday.adapter Faraday.default_adapter # デフォルトアダプタ指定 end
まずは普通のパラメータでリクエスト
client.get {|req| req.url "https://example.com?a=b" }
そうするとままGETリクエストをなげているのがわかる
I, [2019-06-12T23:57:05.830884 #41948] INFO -- request: GET https://example.com?a=b D, [2019-06-12T23:57:05.830941 #41948] DEBUG -- request: User-Agent: "Faraday v0.15.4" I, [2019-06-12T23:57:06.308756 #41948] INFO -- response: Status 200 D, [2019-06-12T23:57:06.308828 #41948] DEBUG -- response: accept-ranges: "bytes"
次にURLにエンコードが必要な文字列がある場合、今回は %
を入れてみる
client.get {|req| req.url "https://example.com?a=%%%" }
I, [2019-06-12T23:57:50.739439 #41948] INFO -- request: GET https://example.com?a=%25%25%25 D, [2019-06-12T23:57:50.739516 #41948] DEBUG -- request: User-Agent: "Faraday v0.15.4" I, [2019-06-12T23:57:51.091595 #41948] INFO -- response: Status 200 D, [2019-06-12T23:57:51.091719 #41948] DEBUG -- response: accept-ranges: "bytes"