在Ruby中,你可以使用内置的net/http
库来发送HTTP请求并处理响应。以下是一个简单的示例,展示了如何使用net/http
库发送GET请求并处理响应:
require 'net/http'
require 'uri'
# 设置请求的URL
url = URI.parse('https://api.example.com/data')
# 创建一个HTTP GET请求
request = Net::HTTP::Get.new(url)
# 发送请求并获取响应
response = Net::HTTP.start(url.hostname, url.port, use_ssl: url.scheme == 'https') do |http|
http.request(request)
end
# 处理响应
if response.is_a?(Net::HTTPSuccess)
# 请求成功,处理响应数据
puts "Status: #{response.code} #{response.message}"
puts "Response body: #{response.body}"
else
# 请求失败,处理错误信息
puts "Error: #{response.code} #{response.message}"
end
在这个示例中,我们首先引入了net/http
和uri
库。然后,我们设置了一个请求的URL,并创建了一个HTTP GET请求。接下来,我们使用Net::HTTP.start
方法启动一个HTTP连接,并使用http.request
方法发送请求。最后,我们根据响应的状态码判断请求是否成功,并相应地处理响应数据或错误信息。
你可以根据需要修改这个示例,以适应不同类型的HTTP请求(如POST、PUT、DELETE等)以及处理响应数据的方式。