HTTParty 在查询字符串中向 % 添加 25
HTTParty adding 25 to % in query string
我正在使用 HTTParty 在 rails 应用程序上创建一个 ruby。我使用这种方法创建了一个请求
query = { :flyFrom => "london_gb",:dateFrom => "02%2F11%2F2015"}
response = HTTParty.get('https://api.blahblah.com/flights', :query => query)
但是 HTTParty 似乎将 % 符号编码为 %25。所以请求看起来像这样:
https://api.blahblah.com/flights?flyfrom=london&dateFrom==02%252F11%252F2015
如您所见,区别在于:
02%2F11%2F2015
02%252F11%252F2015
我的 API 期望日期采用特定格式,因此对此有所抱怨。有谁知道如何让 HTTParty 正确编码这些字符,以便它只发送 % 而不是 %25?
谢谢。
根据附加评论调整答案。
"%25" is the correct URL encoding for "%"。所以 HTTParty 正在对百分比进行编码。
然而,"%2F" is the URL encoding for "/"。因此,如果您打算通过网络发送“02%2F11%2F2015”,那么您可能希望将未编码的版本传递给 HTTParty:“02/11/2015”。
我正在使用 HTTParty 在 rails 应用程序上创建一个 ruby。我使用这种方法创建了一个请求
query = { :flyFrom => "london_gb",:dateFrom => "02%2F11%2F2015"}
response = HTTParty.get('https://api.blahblah.com/flights', :query => query)
但是 HTTParty 似乎将 % 符号编码为 %25。所以请求看起来像这样:
https://api.blahblah.com/flights?flyfrom=london&dateFrom==02%252F11%252F2015
如您所见,区别在于:
02%2F11%2F2015
02%252F11%252F2015
我的 API 期望日期采用特定格式,因此对此有所抱怨。有谁知道如何让 HTTParty 正确编码这些字符,以便它只发送 % 而不是 %25?
谢谢。
根据附加评论调整答案。
"%25" is the correct URL encoding for "%"。所以 HTTParty 正在对百分比进行编码。
然而,"%2F" is the URL encoding for "/"。因此,如果您打算通过网络发送“02%2F11%2F2015”,那么您可能希望将未编码的版本传递给 HTTParty:“02/11/2015”。