Thứ Tư, 30 tháng 1, 2013

Tìm hiểu về Web-HTTP

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.

0 nhận xét:

Đăng nhận xét