Tôi tìm thấy điều này dễ đọc hơn
require "net/http"
require "uri"
url = URI.parse("http://www.whatismyip.com/automation/n09230945.asp")
req = Net::HTTP::Get.new(url.path)
req.add_field("X-Forwarded-For", "0.0.0.0")
req.add_field("Accept", "*/*")
res = Net::HTTP.new(url.host, url.port).start do |http|
http.request(req)
end
puts res.body
bị đánh cắp từ http://www.dzone.com/snippets/send-custom-headers-rub
TUY NHIÊN !!
nếu bạn muốn gửi 'Chấp nhận' tiêu đề (Accept: application/json
) để ứng dụng Rails, bạn không thể làm:
req.add_field("Accept", "application/json")
nhưng làm:
req['Accept'] = 'application/json'
Lý do cho điều này mà Đường ray bỏ qua tiêu đề Chấp nhận khi nó chứa ", /" hoặc "/" và trả lại HTML (trong đó add_field
thêm). Điều này là do các trình duyệt thực sự cũ gửi tiêu đề "Chấp nhận" không chính xác.
Những mạng này :: ví dụ http có thể hữu ích? https://github.com/augustl/net-http-cheat-sheet/blob/master/headers.rb – house9
Cảm ơn! Nếu bạn muốn đặt câu trả lời đó tôi sẽ chấp nhận nó –
đã thêm nhận xét làm câu trả lời - Chúc mừng! – house9