Module: Broadway::Utils
- Defined in:
- lib/broadway.rb
Overview
from Rack::Utils
Instance Method Summary collapse
Instance Method Details
#parse_query(qs, d = nil) ⇒ Object
69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 |
# File 'lib/broadway.rb', line 69 def parse_query(qs, d = nil) params = {} (qs || '').split(d ? /[#{d}] */n : DEFAULT_SEP).each do |p| k, v = p.split('=', 2).map { |x| unescape(x) } if cur = params[k] if cur.class == Array params[k] << v else params[k] = [cur, v] end else params[k] = v end end end |
#unescape(s) ⇒ Object
63 64 65 66 67 |
# File 'lib/broadway.rb', line 63 def unescape(s) s.tr('+', ' ').gsub(/((?:%[0-9a-fA-F]{2})+)/n){ [$1.delete('%')].pack('H*') } end |