2

我正在尝试向 Paypal 发送帖子,他们不希望对任何内容进行 URI 编码。但是 HTTParty 似乎默认情况下会这样做,这对我来说很糟糕。举个简单的例子,当我尝试这段代码时:

HTTParty.post("http://google.com/", body: {foo: "http://example.com/bar"})

我看到帖子正文实际上是

foo=http%3A%2F%2Fexample.com%2Fbar

是否可以让 HTTParty 不执行 URI 编码?

4

1 回答 1

4

有可能的。使用不进行任何 URI 编码的 proc 运行类方法 query_string_normalizer。这对我有用。

query_string_normalizer proc { |query|
    query.map do |key, value|
        "#{key}=#{value}"
    end.join('&')
}
于 2012-11-11T10:40:51.533 回答