Giao thức truyền tải siêu văn bản HTTP

Một phần của tài liệu Xây dựng mô hình giao tiếp các thiết bị dùng mạng CAN (Trang 41)

3.4.1 Tổng quan về HTTP

Là giao thức ở tầng ứng dụng dùng để truyền dữ liệu (văn bản, hình ảnh, âm thanh, …) thông qua kết nối TCP/IP giữa trình duyệt web (Web browser) và máy chủ (Web server). Hoạt động theo mô hình client – server.

Truyền nhận theo kiểu request/respone. Client gửi yêu cầu kết nối đến server với một định dạng header tổng quát như sau:

Request = Request-Line *(( general-header | request-header | entity-header ) CRLF) CRLF [ message-body ]

Ví dụ: 1 yêu cầu kết nối khi truy cập trang web google.com.vn GET http://www.google.com.vn/ HTTP/1.1\r\n

Mozilla/5.0 (Windows NT 6.1; rv:17.0) Gecko/20100101 Firefox/17.0 text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 Trong đó:

 Request Line:

Chứa các thông tin về phương thức kết nối, địa chỉ tài nguyên yêu cầu và phiên bản HTTP yêu cầu

Request-Line = Method Request-URI/HTTP-Version CRLF.  Phương thức kết nối (Method):

- GET: Yêu cầu lấy thông tin. Đây là phương thức dùng nhiều nhất trong duyệt web - HEAD: Chỉ yêu cầu lấy thông tin kết nối

- POST: Chú thích thêm về tài nguyên yêu cầu, gửi thông tin của một biểu mẫu, … - DELETE: yêu cầu máy chủ xóa nguồn tài nguyên yêu cầu.

- …

 Địa chỉ tài nguyên (Request URI):

Request-URI = absoluteURI | abs_path | authority

Thường dùng cách truy cập địa chỉ tuyệt đối (đầy đủ thông tin về địa chỉ của nguồn tài nguyên cần yêu cầu)

Ví dụ: http://hocvui.net/html/paragraph-tag-p.html

Hoặc truy cập theo địa chỉ tương đối (chỉ chứa một phần thông tin về nguồn tài nguyên yêu cầu)

Ví dụ: http://tanbachkhoa.edu.vn/

Khi đó theo mặc định thì nguồn yêu cầu sẽ bổ sung thêm là index.html  Thông tin bổ sung header (message body)

Phần này sẽ kèm theo các thông tin về client như: trình duyệt đang sử dụng, phiên bản trình duyệt, …

Sau khi đã nhận đầy đủ thông tin về yêu cầu kết nối từ client thì server xử lý thông tin và trả về bản tin (Respone): Response = Status-Line *(( general-header | response-header | entity-header ) CRLF) CRLF [ message-body ] Ví dụ: HTTP/1.0 200 OK

Date: Fri, 31 Dec 1999 23:59:59 GMT Content-Type: text/html

Content-Length: 1354 <html>

<body>

<h1>Happy New Millennium!</h1> … (more file contents)

</body> </html>  Status Line:

Chứa các thông tin về phiên bản HTTP, mã trạng thái kết nối và kèm theo cụm từ chú thích.

 Mã trạng thái kết nối (Status code):

Gồm 3 số để chú thích về trạng thái kết nối

 1xx: yêu cầu đang được xử lý.

 2xx: yêu cầu thành công.

 3xx: hướng dẫn, thực hiện thao tác khác để tiếp tục.

 4xx: lỗi từ phía client, yêu cầu không đúng hoặc sai cú pháp, …

 5xx: lỗi từ phía server. Ví dụ:

100: Continue

Một phần của tài liệu Xây dựng mô hình giao tiếp các thiết bị dùng mạng CAN (Trang 41)

Tải bản đầy đủ (PDF)

(88 trang)