面试题答案
一键面试代码思路
- 引入
net/http
库,这是Ruby中用于HTTP请求的标准库。 - 创建一个
URI
对象,用于表示要请求的URL。 - 使用
Net::HTTP
类的get
方法发送GET请求,并在请求头中添加自定义头部信息。 - 处理响应,例如输出响应的状态码、头部信息和主体内容。
完整代码示例
require 'net/http'
require 'uri'
# 创建URI对象
uri = URI('https://example.com')
# 发送GET请求并添加自定义头部
response = Net::HTTP.get(uri, {'Custom - Header' => 'example'})
# 输出响应内容
puts response
在上述代码中,https://example.com
替换为你实际要请求的URL。Net::HTTP.get
方法会返回一个包含响应内容的字符串。如果需要获取响应的状态码、头部信息等更多内容,可以使用Net::HTTP.start
块结合Net::HTTP::Get
请求对象,如下:
require 'net/http'
require 'uri'
uri = URI('https://example.com')
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true if uri.scheme == 'https'
request = Net::HTTP::Get.new(uri)
request['Custom - Header'] = 'example'
response = http.request(request)
puts "Status Code: #{response.code}"
puts "Response Headers: #{response.to_hash}"
puts "Response Body: #{response.body}"