Fundamentals slide giới thiệu
Web ProgrammingWeb Programmingthangld@uit.edu.vnthangld@uit.edu.vnKhoa Mạng máy tính và Truyền thôngKhoa Mạng máy tính và Truyền thôngĐại học Công nghệ Thông tinĐại học Công nghệ Thông tinFundamentals Nội dungNội dungThuật ngữ và khái niệmThuật ngữ và khái niệmRequest và ResponseRequest và ResponseHTMLHTMLJava Web applicationJava Web application Thuật ngữ và khái niệmThuật ngữ và khái niệmHTTP: HyperText Transfer ProtocolHTTP: HyperText Transfer ProtocolGiao thức truyền thông giữa web browser và Giao thức truyền thông giữa web browser và web serverweb serverHỗ trợ truyền thông nhiều loại dữ liệu (MIME Hỗ trợ truyền thông nhiều loại dữ liệu (MIME types - types - Multipurpose Internet Mail ExtensionsMultipurpose Internet Mail Extensions)Client/Server (cơ chế request & response)Client/Server (cơ chế request & response)Hiển thị nội dung được thực hiện ở clientHiển thị nội dung được thực hiện ở clientNội dung hiển thị được cung cấp bởi serverNội dung hiển thị được cung cấp bởi serverSử dụng giao thức TCP ở tầng TransportSử dụng giao thức TCP ở tầng TransportHTTP1.0: stateless / HTTP1.1: supports HTTP1.0: stateless / HTTP1.1: supports persistent connectionspersistent connections Thuật ngữ và khái niệmThuật ngữ và khái niệmURI: Uniform Resource IdentifierURI: Uniform Resource IdentifierURL: Uniform Resource LocatorURL: Uniform Resource LocatorURN: Uniform Resource NameURN: Uniform Resource NameTrang Web (Web page)Trang Web (Web page)Tài liệu siêu văn bản trên WebTài liệu siêu văn bản trên WebSiêu liên kết (Hyperlink) Siêu liên kết (Hyperlink) Văn bản, hình ảnh hoặc các thành phần khác Văn bản, hình ảnh hoặc các thành phần khác trên Web dùng để kết nối người dùng đến các trên Web dùng để kết nối người dùng đến các dữ liệu khác trên Webdữ liệu khác trên Web Thuật ngữ và khái niệmThuật ngữ và khái niệmHTML: HyperText Markup LanguageHTML: HyperText Markup LanguageNgôn ngữ dùng để định nghĩa cấu trúc và nội Ngôn ngữ dùng để định nghĩa cấu trúc và nội dung của các trang Webdung của các trang WebWeb Server: HTTP ServerWeb Server: HTTP ServerLưu trữ và phục vụ yêu cầu truy xuất đến các Lưu trữ và phục vụ yêu cầu truy xuất đến các trang Webtrang WebCung cấp nội dung HTML về browserCung cấp nội dung HTML về browserEg. Apache HTTP ServerEg. Apache HTTP ServerWeb Browser: Web Browser: Phần mềm hiển thị nội dung các trang WebPhần mềm hiển thị nội dung các trang WebEg. Internet Explorer, Mozila FirefoxEg. Internet Explorer, Mozila Firefox Request & ResponseRequest & ResponseHTTP có cấu trúc đơn giảnHTTP có cấu trúc đơn giảnClient gửi một yêu cầu (HTTP Request)Client gửi một yêu cầu (HTTP Request)Server gửi thông tin phản hồi (HTTP Response)Server gửi thông tin phản hồi (HTTP Response)WebBrowserWebServer(Servlet)EngineDatabaseJavaApplicationWebServiceHTTPRequestHTTPResponseJDBC/RMI/SOAP Request MethodRequest MethodCác kiểu HTTP RequestCác kiểu HTTP RequestGETGETPOSTPOSTHEADHEADPUTPUTDELETEDELETETRACES TRACES OPTIONSOPTIONSGET, POST, HEAD được tất cả các GET, POST, HEAD được tất cả các Web server hỗ trợWeb server hỗ trợCác phương thức còn lại là tùy chọnCác phương thức còn lại là tùy chọn MethodsMethodsGET: yêu cầu + dữ liệu được gửi đến một GET: yêu cầu + dữ liệu được gửi đến một thực thể được xác định bởi URI và nhận thực thể được xác định bởi URI và nhận thông tin trả về. Dữ liệu được đính kèm thông tin trả về. Dữ liệu được đính kèm vào URI.vào URI.POST: gửi yêu cầu + dữ liệu đến một thực POST: gửi yêu cầu + dữ liệu đến một thực thể được xác định bởi URI và nhận thông thể được xác định bởi URI và nhận thông tin trả về. Dữ liệu được gửi sau thông tin tin trả về. Dữ liệu được gửi sau thông tin tiêu đề (information header)tiêu đề (information header) GET vs. POSTGET vs. POSTGETGETPOSTPOSTDữ liệu gửi lên server là Dữ liệu gửi lên server là một phần trong URLmột phần trong URLDữ liệu có giới hạn về Dữ liệu có giới hạn về kích thướckích thướcCó thể sử dụng HTML Có thể sử dụng HTML Form hoặc Hyperlink để Form hoặc Hyperlink để gửi dữ liệu đến servergửi dữ liệu đến serverDữ liệu không gắn vào Dữ liệu không gắn vào URL nên không hiển thị URL nên không hiển thị trên URLtrên URLDữ liệu gửi có kích Dữ liệu gửi có kích thước không giới hạnthước không giới hạnThường dữ liệu được Thường dữ liệu được gửi đến server thông gửi đến server thông qua HTML Formqua HTML Form MethodsMethodsHEAD: chỉ yêu cầu nhận header information HEAD: chỉ yêu cầu nhận header information theo URI được cung cấp.theo URI được cung cấp.PUT: chuyển trực tiếp các tài liệu lên server PUT: chuyển trực tiếp các tài liệu lên server tại vị trí được xác định bởi URItại vị trí được xác định bởi URIDELETE: xóa một thực thể trên server được DELETE: xóa một thực thể trên server được xác định bởi URIxác định bởi URITRACE: dùng cho việc dò tìm lỗi trong quá TRACE: dùng cho việc dò tìm lỗi trong quá trình chuyển tiếp các HTTP requesttrình chuyển tiếp các HTTP requestOPTIONS: dùng để xác định khả năng của OPTIONS: dùng để xác định khả năng của server, hoặc các đặc điểm của một thực thể server, hoặc các đặc điểm của một thực thể xác địnhxác định [...]... liệu có giới hạn về Dữ liệu có giới hạn về kích thước kích thước Có thể sử dụng HTML Có thể sử dụng HTML Form hoặc Hyperlink để Form hoặc Hyperlink để gửi dữ liệu đến server gửi dữ liệu đến server Dữ liệu không gắn vào Dữ liệu không gắn vào URL nên không hiển thị URL nên khơng hiển thị trên URL trên URL Dữ liệu gửi có kích Dữ liệu gửi có kích thước khơng giới hạn thước không giới hạn Thường . gửi lên server là một phần trong URLmột phần trong URLDữ liệu có giới hạn về Dữ liệu có giới hạn về kích thướckích thướcCó thể sử dụng HTML Có thể sử dụng. trên URLtrên URLDữ liệu gửi có kích Dữ liệu gửi có kích thước không giới hạnthước không giới hạnThường dữ liệu được Thường dữ liệu được gửi đến server thông