Với lệnh telnet docs.python.org 80, tôi có thể thực hiện một yêu cầu HTTP thủ công http://docs.python.org/2/license.html, bằng cách nhập yêu cầu thực tế.
Bây giờ, thay vì nhập trực tiếp, tôi muốn cung cấp yêu cầu từ tệp văn bản.
Tôi đã thử điều này:
cat request.txt|telnet docs.python.org 80
request.txt :
GET /2/license.html HTTP/1.1
Host: docs.python.org
(Bạn phải hoàn thành tệp với một dòng trống hoặc bạn sẽ nhận được yêu cầu xấu!)
Nhưng kết nối đến máy chủ bị đóng ngay lập tức.
Làm thế nào tôi nên đúng ống request.txt tới telnet docs.python.org 80?
biên tập:
Thật tốt khi biết điều đó; nếu bạn sử dụng HEADthay vì GET, bạn sẽ nhận được phản hồi giống như khi bạn thực hiện một GETyêu cầu, ngoại trừ nội dung thư.
Vì vậy, sử dụng HEADnếu bạn chỉ muốn kiểm tra các tiêu đề HTTP. (tức là nội dung của phản hồi không làm lộn xộn đầu ra vỏ của bạn.)
telnet docs.python.org 80, vì vậy bạn sẽ phải nhanh chóng nhập hai dòng đó (sao chép dán nếu không hoàn hảo.) Trong vài giây hoặc máy chủ sẽ trả về lỗi hết thời gian.
telnet docs.python.org 80 <ENTER> GET /2/license.html HTTP/1.1 <ENTER> Host: docs.python.org <ENTER> <ENTER>
<ENTER>lần thứ hai vào cuối là vì giao thức HTTP yêu cầu thêm một dòng trống sau các tiêu đề yêu cầu. Xem phần thông báo yêu cầu của bài viết wiki HTTP
telnet < request.txtnhưng tôi không thể làm cho GETlệnh hoạt động được.
GETbạn đã đăng, tôi gặp408 Request Time-outlỗi. Ngoài ra,wget http://docs.python.org/2/license.htmlkhông phải là một lựa chọn?