HTTP
- HTTP = Hyper Text Tranfer Protocol (RFC)
- Dùng để trao đổi thông tin (thường là trang web) giữa web client và web server.
- Tầng transport: TCP
- Hoạt động theo mô hình client – server
+ Web Server
Port: 80
Đợi kết nối và trả lời các yêu cầu từ client
+ Web Client
Kết nối và gửi yêu cầu tới server
----------------------------------------------------------------
HTTP – Request
- Gói tin request được chia ra làm 3 phần:
+ Request Line: Method <SpaceBar> Request_URL <SpaceBar> HTTP Version
+ Header: Đây là nơi chứa những thông tin thêm mà browser muốn gửi lên server như: phiên bản của web browser, độ dài của nội dung trongphần body, …
+ Body Là nơi chứa nội dung, thông điệp mà browser muốn gửi cho web server
HTTP – Reponse
- Gói tin reponse được chia ra làm 3 phần:
+ Status-Line = HTTP-Version <SpaceBar> Status-Code <SpaceBar> Reason
+ Header: Đây là nơi chứa những thông tin thêm mà web server muốn gửi cho browser như: phiên bản của web server, độ dài của nội dungtrong phần body, …
+ Body: Là nơi chứa nội dung, thông điệp mà web server muốn gửi cho browser
----------------------------------------------------------------
Web Application vs Web site
- Web site
+ Nội dung là “tĩnh” và giống nhau cho tất cả mọi người
+ Không xử lý “input” do người dùng gửi lên
- Nội dung của trang web được tạo động bởi “Application”.
- Nội dung của trang web có thể sẽ khác nhau.
- Xử lý “input” của người dùng
- Kiến trúc rất phức tạp, có nhiều platfrom, nhiều giao thức.
Web Application
Gồm 3 thành phần chính sau:
- Web Server
- Application Content:
+ Là một chương trình thường nằm trên cùng một máy với web server.
+ Nhận “request” và “parameter” do browser gửi lên thông qua web server để thực hiện một vài chức năng nào đó
+ Phát sinh ra các trang web (web page) khác nhau tùy theo request và parameter do browser gửi lên
- Data Store:
+ Có thể là cơ sở dữ liệu, flat file, … để ứng dụng có thể lấy hoặc lưu trữ dữ liệu
+ Có thể nằm cùng máy hoặc khác máy với web server
Web Application - Stateful
- HTTP là giao thức stateless
- Hầu hết các ứng dụng web là stateful
Ví du: Shopping, Banking, …
- Server sẽ nhóm một tập các request của client vào cùng một session.
- Ở request đầu tiên của session, khi server trả lời sẽ gửi kèm thông tin SessionID cho client.
- Khi client gửi các request tiếp theo nó sẽ gửi kèm thông tin SessionID mà server đã cấp để cho biết request này thuộc về session nào.
- Những cách thức mà client và server có thể trao đổi sessionID: Thông qua URL, Thông qua hidden form, Thông qua cookie.
إرسال تعليق