以下の内容はhttps://shinkufencer.hateblo.jp/entry/2019/06/12/230000より取得しました。


RubyのFaradayで送信するURLはURIエンコードを勝手にかけてくれる

表題の通りネタ

環境

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=%%%" }

すると勝手にURIエンコードをかけて送付してくれる。

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"

参考リンク




以上の内容はhttps://shinkufencer.hateblo.jp/entry/2019/06/12/230000より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14