在Ruby中,您可以使用内置的net/http
库来发送HTTP请求。以下是一个简单的示例,展示了如何使用该库发送GET和POST请求以及包含数据的情况:
require 'net/http' require 'uri' # 发送GET请求 def get_request(url) uri = URI.parse(url) response = Net::HTTP.get_response(uri) puts "GET Response: #{response.body}" end # 发送POST请求 def post_request(url, data) uri = URI.parse(url) request = Net::HTTP::Post.new(uri) request.set_form_data(data) # 设置表单数据 response = Net::HTTP.start(uri.hostname, uri.port, use_ssl: uri.scheme == 'https') do |http| http.request(request) end puts "POST Response: #{response.body}" end # 示例数据 get_url = 'https://jsonplaceholder.typicode.com/todos/1' post_url = 'https://jsonplaceholder.typicode.com/posts' post_data = https://www.yisu.com/ask/{'New post', body: 'This is the content of the new post.', userId: 1 } # 发送GET请求 get_request(get_url) # 发送POST请求 post_request(post_url, post_data)
在这个示例中,我们定义了两个方法:get_request
和post_request
。get_request
方法接受一个URL参数,并使用Net::HTTP.get_response
发送GET请求。post_request
方法接受一个URL和一个包含要发送的数据的哈希参数。我们使用Net::HTTP::Post.new
创建一个新的POST请求,并使用set_form_data
方法设置表单数据。然后,我们使用Net::HTTP.start
启动一个HTTP连接,并使用http.request
发送请求。
请注意,这个示例仅用于演示目的。在实际应用中,您可能需要根据具体需求对代码进行调整,例如添加错误处理、设置请求头等。