
代码示例:
以下是一个使用 Ruby 发送基于 HTTP 协议请求的简单示例,包括 GET 请求和 POST 请求的实现。此示例使用了 Ruby 的标准库 net/http,这是一个轻量级且易于使用的库,适用于处理 HTTP 请求。
示例代码
1. 发送 GET 请求
require 'net/http'
require 'uri'
# 定义目标 URL
url = URI.parse('https://jsonplaceholder.typicode.com/posts/1')
# 创建 HTTP 对象
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true # 如果是 HTTPS 请求
# 创建 GET 请求
request = Net::HTTP::Get.new(url)
# 发送请求并获取响应
response = http.request(request)
# 输出响应内容
puts "Response Code: #{response.code}"
puts "Response Body: #{response.body}"
2. 发送 POST 请求
require 'net/http'
require 'uri'
require 'json'
# 定义目标 URL
url = URI.parse('https://jsonplaceholder.typicode.com/posts')
# 创建 HTTP 对象
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true # 如果是 HTTPS 请求
# 创建 POST 请求
request = Net::HTTP::Post.new(url)
request['Content-Type'] = 'application/json' # 设置请求头
# 设置请求体
data = {
title: 'foo',
body: 'bar',
userId: 1
}
request.body = data.to_json
# 发送请求并获取响应
response = http.request(request)
# 输出响应内容
puts "Response Code: #{response.code}"
puts "Response Body: #{response.body}"
示例说明
-
GET 请求:
- 使用
Net::HTTP::Get创建一个 GET 请求。 - 通过
http.request(request)发送请求并获取响应。 - 响应对象
response包含了响应的状态码、头信息和正文内容。
- 使用
-
POST 请求:
- 使用
Net::HTTP::Post创建一个 POST 请求。 - 设置请求头
Content-Type为application/json,表示发送 JSON 格式的数据。 - 将请求数据转换为 JSON 格式并设置到请求体中。
- 发送请求并获取响应,处理方式与 GET 请求类似。
- 使用
注意事项
- 如果目标服务器使用 HTTPS,需要设置
http.use_ssl = true。 - 可以根据需要设置更多的请求头,例如
Authorization等。 - 对于复杂的请求,可以考虑使用第三方库如
httparty或faraday,它们提供了更简洁的 API 和更多的功能。
请根据实际需求调整代码中的 URL 和请求数据。
更多技术文章见公众号: 大城市小农民

815

被折叠的 条评论
为什么被折叠?



