Ruby HTTP请求如何设置参数
导读:在Ruby中,您可以使用net/http库来发送HTTP请求。要设置参数,您需要将参数添加到请求的URL中,或者将其作为请求体的一部分(通常用于POST请求)。以下是两种方法的示例: 方法1:将参数添加到URL中 require 'net/...
在Ruby中,您可以使用net/http
库来发送HTTP请求。要设置参数,您需要将参数添加到请求的URL中,或者将其作为请求体的一部分(通常用于POST请求)。以下是两种方法的示例:
方法1:将参数添加到URL中
require 'net/http'
require 'uri'
url = URI("https://example.com/api/v1/search")
params = {
q: "ruby",
page: 1,
per_page: 10
}
# 将参数编码到URL中
query = params.map {
|key, value| "#{
URI.encode(key)}
=#{
URI.encode(value)}
" }
.join("&
")
url.query = query
response = Net::HTTP.get(url)
puts response
方法2:将参数作为请求体发送(POST请求)
require 'net/http'
require 'uri'
require 'json'
url = URI("https://example.com/api/v1/search")
params = {
q: "ruby",
page: 1,
per_page: 10
}
# 将参数转换为JSON格式
payload = {
params }
.to_json
request = Net::HTTP::Post.new(url)
request["Content-Type"] = "application/json"
request.body = payload
response = Net::HTTP.start(url.hostname, url.port, use_ssl: url.scheme == 'https') do |http|
http.request(request)
end
puts response
在这些示例中,我们首先定义了一个包含参数的哈希表。然后,我们将这些参数添加到URL中(对于GET请求)或作为JSON格式的请求体(对于POST请求)。最后,我们使用Net::HTTP
库发送请求并输出响应。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Ruby HTTP请求如何设置参数
本文地址: https://pptw.com/jishu/705975.html