
エントリーの編集

エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
[Ruby] URLエンコード済かどうかの確認をして二重エンコードを避ける - Qiita
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています

- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
[Ruby] URLエンコード済かどうかの確認をして二重エンコードを避ける - Qiita
URLをエンコードした状態で保存する場合、URI.encodeのような処理でエンコードすることが可能ですが、も... URLをエンコードした状態で保存する場合、URI.encodeのような処理でエンコードすることが可能ですが、もし入力されたURLがエンコード済の場合、二重エンコードとなってしまい正しいURLではなくなってしまいます。この記事ではエンコード済かどうかの確認方法をまとめました。 結論 URLをデコードした文字列が元の文字列と一致する場合エンコードされていない状態、一致しない場合はエンコード済という判断が可能です。 Addressable::URI.unescape(url) != url ? Addressable::URI.encode(url) : url 動作確認 Ruby 2.7.0からURI.encodeがobsoleteになっているため、Addressableを使用しようと思います。 例としてAmazonのURLを使用すると以下のような結果になります。URLエンコードされていない場