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 HEAD
thay vì GET
, bạn sẽ nhận được phản hồi giống như khi bạn thực hiện một GET
yêu cầu, ngoại trừ nội dung thư.
Vì vậy, sử dụng HEAD
nế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.txt
nhưng tôi không thể làm cho GET
lệnh hoạt động được.
GET
bạn đã đăng, tôi gặp408 Request Time-out
lỗi. Ngoài ra,wget http://docs.python.org/2/license.html
không phải là một lựa chọn?