4

我知道如何使用 Net::HTTP 解析 HTTP 请求。你如何解析 HTTPS 请求?

我试过了,它说作为回应(其中一行):

<head><title>400 The plain HTTP request was sent to HTTPS port</title></head>

斯托克斯

编辑:

因此,为了更详细地向您展示:

例如,这里是 HTTP API

https://xxxxx.info/merchant/balance?password=$main_password

如何使用 Net:http 运行它?还是我用别的东西?

谢谢斯托克斯

4

2 回答 2

13

如果您向我们展示一些代码会有所帮助吗?

尝试设置这些属性

# assuming http is generated like this http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
# might need this as well? 
http.verify_mode = OpenSSL::SSL::VERIFY_NONE
于 2013-06-30T15:06:43.230 回答
2

您可以通过在执行请求之前设置use_ssl为来实现。true

uri = URI(https://xxxxx.info/merchant/balance?password=$main_password)
res = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) do |http|
  http.request(req)
end
puts res.body

参考https://ruby-doc.org/stdlib-2.4.1/libdoc/net/http/rdoc/Net/HTTP.html#class-Net::HTTP-label-HTTPS

于 2021-05-06T13:02:43.637 回答