这是最奇怪的事情。当我添加;
in 时set_form_data
,value
被解释为value;
在服务器端。当我删除 时;
,'dontescape' 的值被解释为file%3a%2f%2f%2fpath%2fto
. 到底发生了什么?除非我明确调用 CGI::escape,否则我不希望任何东西逃脱!请帮忙 :)
postParams = {
'key1' => 'value',
'dontescape' => 'file:///path/to'
}
url = URI.parse('https://my.url')
req = Net::HTTP::Post.new(url.path)
req.basic_auth('username', 'password')
req.set_form_data(postParams, ';')
sock = Net::HTTP.new(url.host, 443)
sock.use_ssl = true
sock.ssl_version = 'SSLv3'
sock.start do |http|
response = http.request(req) do
return response.body
end