- Chuyên mục khác :
- PHP cơ bản và nâng cao
- ·
- Bài tập PHP
- ·
- Javascript cơ bản và nâng cao
- ·
- HTTP cơ bản và nâng cao
- Bài hướng dẫn HTTP
- Học HTTP cơ bản và nâng cao
- HTTP là gì
- Các tham số trong HTTP
- Message trong HTTP
- Yêu cầu (Request) trong HTTP
- Phản hồi (Response) trong HTTP
- Phương thức trong HTTP
- Mã hóa trạng thái trong HTTP
- Các trường Header trong HTTP
- Caching trong HTTP
- Mã hóa URL trong HTTP
- Bảo mật trong HTTP
- Ví dụ về Message trong HTTP
- Tài liệu tham khảo HTTP
- Tài liệu tham khảo về HTTP
Tập hợp các phương thức phổ biến cho HTTP/1.1 được xác định bên dưới và bộ thiết lập này có thể được mở rộng dựa trên các sự yêu cầu. Những tên method này là case-sensitive và chúng phải được sử dụng trong dạng chữ hoa.
STT | Phương thức và miêu tả |
---|---|
1 | GET GET được sử dụng để lấy lại thông tin từ Server đã cung cấp bởi sử dụng một URI đã cung cấp. Các yêu cầu sử dụng GET nên chỉ nhận dữ liệu và nên không có ảnh hưởng gì tới dữ liệu. |
2 | HEAD Tương tự như GET, nhưng nó truyền tải dòng trạng thái và khu vực Header. |
3 | POST Một yêu cầu POST được sử dụng để gửi dữ liệu tới Server, ví dụ, thông tin khách hàng, file tải lên, …, bởi sử dụng các mẫu HTML. |
4 | PUT Thay đổi tất cả các đại diện hiện tại của nguồn mục tiêu với nội dung được tải lên. |
5 | DELETE Gỡ bỏ tất cả các đại diện hiện tại của nguồn mục tiêu bởi URI. |
6 | CONNECT Thiết lập một tunnel tới Server được xác định bởi URI đã cung cấp. |
7 | OPTIONS Miêu tả các chức năng giao tiếp cho nguồn mục tiêu. |
8 | TRACE Trình bày một vòng lặp kiểm tra thông báo song song với path tới nguồn mục tiêu. |
Phương thức GET
Một yêu cầu GET lấy dữ liệu từ một Server bởi việc xác định các tham số trong đoạn URL của yêu cầu. Đây là phương thức chính được sử dụng để thu hồi tài liệu. Ví dụ sau chỉ cách sử dụng của phương thức GET để chỉ thị hello.htm:
GET /hello.htm HTTP/1.1 User-Agent: Mozilla/4.0 (compatible; MSIE5.01; Windows NT) Host: www.tutorialspoint.com Accept-Language: en-us Accept-Encoding: gzip, deflate Connection: Keep-Alive
Server sẽ phản hồi lại yêu cầu trên là như sau:
HTTP/1.1 200 OK Date: Mon, 27 Jul 2009 12:28:53 GMT Server: Apache/2.2.14 (Win32) Last-Modified: Wed, 22 Jul 2009 19:15:56 GMT ETag: "34aa387-d-1568eb00" Vary: Authorization,Accept Accept-Ranges: bytes Content-Length: 88 Content-Type: text/html Connection: Closed
<html> <body> <h1>Hello, World!</h1> </body> </html>
Phương thức HEAD
Phương thức HEAD là có chức năng tương tự như GET, ngoại trừ là Server phản hồi với một dòng và các Header phản hồi, nhưng không có phần thân đối tượng. Ví dụ sau chỉ cách sử dụng của phương thức HEAD để chỉ thị thông tin Header về hello.htm:
HEAD /hello.htm HTTP/1.1 User-Agent: Mozilla/4.0 (compatible; MSIE5.01; Windows NT) Host: www.tutorialspoint.com Accept-Language: en-us Accept-Encoding: gzip, deflate Connection: Keep-Alive
Server phản hồi lại yêu cầu HEAD trên như sau:
HTTP/1.1 200 OK Date: Mon, 27 Jul 2009 12:28:53 GMT Server: Apache/2.2.14 (Win32) Last-Modified: Wed, 22 Jul 2009 19:15:56 GMT ETag: "34aa387-d-1568eb00" Vary: Authorization,Accept Accept-Ranges: bytes Content-Length: 88 Content-Type: text/html Connection: Closed
Bạn chú ý rằng tại đây Server không gửi bất cứ dữ liệu nào sau Header.
Phương thức POST
Phương thức POST được sử dụng khi bạn muốn gửi một vài dữ liệu tới Server, ví dụ, cập nhật file, dữ liệu mẫu, …. Ví dụ sau đây chỉ cách sử dụng của phương thức POST để gửi một dữ liệu mẫu tới Server, mà sẽ được xử lý bởi một process.cgi và cuối cùng một phản hồi sẽ được trả lại:
POST /cgi-bin/process.cgi HTTP/1.1 User-Agent: Mozilla/4.0 (compatible; MSIE5.01; Windows NT) Host: www.tutorialspoint.com Content-Type: text/xml; charset=utf-8 Content-Length: 88 Accept-Language: en-us Accept-Encoding: gzip, deflate Connection: Keep-Alive
<?xml version="1.0" encoding="utf-8"?> <string xmlns="http://clearforest.com/">string</string>
Bên Server, scipt process.cgi xử lý dữ liệu đã truyền và gửi phản hồi như sau:
HTTP/1.1 200 OK Date: Mon, 27 Jul 2009 12:28:53 GMT Server: Apache/2.2.14 (Win32) Last-Modified: Wed, 22 Jul 2009 19:15:56 GMT ETag: "34aa387-d-1568eb00" Vary: Authorization,Accept Accept-Ranges: bytes Content-Length: 88 Content-Type: text/html Connection: Closed
<html> <body> <h1>Request Processed Successfully</h1> </body> </html>
Phương thức PUT
Phương thức PUT được sử dụng để yêu cầu Server để lưu giữ phần thân đối tượng được bao gồm tại một vị trí được xác định bởi URL đã cung cấp. Ví dụ sau yêu cầu Server lưu phần thân đối tượng đã cung cấp trong hello.htm tại root của Server:
PUT /hello.htm HTTP/1.1 User-Agent: Mozilla/4.0 (compatible; MSIE5.01; Windows NT) Host: www.tutorialspoint.com Accept-Language: en-us Connection: Keep-Alive Content-type: text/html Content-Length: 182
<html> <body> <h1>Hello, World!</h1> </body> </html>
Server sẽ lưu phần thân đối tượng trong tệp hello và sẽ gửi phản hồi sau trở lại Client:
HTTP/1.1 201 Created Date: Mon, 27 Jul 2009 12:28:53 GMT Server: Apache/2.2.14 (Win32) Content-type: text/html Content-length: 30 Connection: Closed
<html> <body> <h1>The file was created.</h1> </body> </html>
Phương thức DELETE
Phương thức DELETE được sử dụng để yêu cầu Server để xóa một file tại vị trí được xác định bởi URL đã cung cấp. Ví dụ sau yêu cầu Server xóa tệp đã cho hello.htm tại root của Server:
DELETE /hello.htm HTTP/1.1 User-Agent: Mozilla/4.0 (compatible; MSIE5.01; Windows NT) Host: www.tutorialspoint.com Accept-Language: en-us Connection: Keep-Alive
Server sẽ xóa một tệp đã được đề cập và sẽ gửi phản hồi trở lại tới Client:
HTTP/1.1 200 OK Date: Mon, 27 Jul 2009 12:28:53 GMT Server: Apache/2.2.14 (Win32) Content-type: text/html Content-length: 30 Connection: Closed
<html> <body> <h1>URL deleted.</h1> </body> </html>
Phương thức CONNECT
Phương thức CONNECT được sử dụng bởi Client để thành lập một kết nối mạng tới Server qua HTTP. Ví dụ sau yêu cầu một kết nối với một Server đang chạy trên host tutorialspoint.com:
CONNECT www.tutorialspoint.com HTTP/1.1 User-Agent: Mozilla/4.0 (compatible; MSIE5.01; Windows NT)
Kết nối được thành lập với Server và phản hồi sau được gửi trả lại tới Client:
HTTP/1.1 200 Connection established Date: Mon, 27 Jul 2009 12:28:53 GMT Server: Apache/2.2.14 (Win32)
Phương thức OPTIONS
Phương thức OPTIONS được sử dụng bởi Client để tìm ra các phương thức HTTP và các chức năng được hỗ trợ bởi một Server. Client có thể xác định một URL với phương thức OPTIONS hoặc một dấu * để hướng tới toàn bộ Server. Ví dụ sau yêu cầu một danh sách các phương thức được hỗ trợ bởi một Server đang chạy trên tutorialspoint.com:
OPTIONS * HTTP/1.1 User-Agent: Mozilla/4.0 (compatible; MSIE5.01; Windows NT)
Server sẽ gửi một thông tin dựa trên định cấu hình hiện tại của Server, ví dụ:
HTTP/1.1 200 OK Date: Mon, 27 Jul 2009 12:28:53 GMT Server: Apache/2.2.14 (Win32) Allow: GET,HEAD,POST,OPTIONS,TRACE Content-Type: httpd/unix-directory
Phương thức TRACE
Phương thức TRACE được sử dụng để ánh xạ các nội dung của một yêu cầu HTTP tới người yêu cầu mà có thể được sử dụng cho mục đích debug tại thời điểm của sự phát triển. Ví dụ sau chỉ cách sử dụng của phương thức TRACE:
TRACE / HTTP/1.1 Host: www.tutorialspoint.com User-Agent: Mozilla/4.0 (compatible; MSIE5.01; Windows NT)
Server sẽ gửi thông báo sau trong phản hồi tới yêu cầu trên:
HTTP/1.1 200 OK Date: Mon, 27 Jul 2009 12:28:53 GMT Server: Apache/2.2.14 (Win32) Connection: close Content-Type: message/http Content-Length: 39 TRACE / HTTP/1.1 Host: www.tutorialspoint.com User-Agent: Mozilla/4.0 (compatible; MSIE5.01; Windows NT)
Bài học HTTP phổ biến khác tại s2sontech.com:
Bình luận (0)