Bài giảng Xây dựng và triển khai Web Service cho ứng dụng di động - Bài 1: Giới thiệu về Web Service cho ứng dụng trên thiết bị di động

1.1 Giới thiệu các loại dịch vụ Web Xây dựng và triển khai Web Service cho ứng dụng di động 4 Theo định nghĩa của W3C (World Wide Web Consortium): • Dịch vụ Web là một hệ thống phần mềm được thiết kế để hỗ trợ khả năng tương tác giữa các ứng dụng trên các máy tính khác nhau thông qua mạng Internet, giao diện chung và sự gắn kết của nó được mô tả bằng XML. • Là tài nguyên phần mềm có thể xác định bằng địa chỉ URL. • Thực hiện các chức năng và đưa ra các thông tin người dùng yêu cầu. • Ứng dụng cơ bản của Dịch vụ Web là tích hợp các hệ thống. • Các ứng dụng được tích hợp với cơ sở dữ liệu và các ứng dụng khác, người sử dụng sẽ giao tiếp với CSDL để tiến hành phân tích và lấy dữ liệu.

pdf33 trang | Chia sẻ: thanhle95 | Lượt xem: 516 | Lượt tải: 3download
Bạn đang xem trước 20 trang tài liệu Bài giảng Xây dựng và triển khai Web Service cho ứng dụng di động - Bài 1: Giới thiệu về Web Service cho ứng dụng trên thiết bị di động, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Trường ĐH Khoa Học Tự Nhiên Tp. Hồ Chí Minh TRUNG TÂM TIN HỌC 2015 Bài 1: Giới thiệu về Web Service cho ứng dụng trên thiết bị di động Ngành Mạng & Thiết bị di động www.t3h.vn 1. Giới thiệu về dịch vụ Web (Web Service) • Giới thiệu dịch vụ Web • Giới thiệu các công nghệ xây dựng dịch vụ Web • Đặc điểm của dịch vụ Web • Kiến trúc của dịch vụ Web • Các thành phần chính của dịch vụ Web • An toàn cho dịch vụ Web • Xây dựng một dịch vụ Web • Tích hợp dịch vụ Web theo chuẩn 2. Giới thiệu về IIS (Internet Information Service) Nội dung Xây dựng và triển khai Web Service cho ứng dụng di động 2 1.1 Giới thiệu các loại dịch vụ Web Xây dựng và triển khai Web Service cho ứng dụng di động 3  Dịch vụ Web (Web Service) là gì? Là sự kết hợp các ứng dụng trên máy tính cá nhân, thiết bị di động với ứng dụng trên các thiết bị khác, các cơ sở dữ liệu và các mạng máy tính để tạo thành một cơ cấu tính toán hoàn hảo mà người sử dụng có thể làm việc, yêu cầu, phân tích, khai thái, cập nhật,thông tin với nó thông qua mạng Internet hoặc Wifi. 1.1 Giới thiệu các loại dịch vụ Web Xây dựng và triển khai Web Service cho ứng dụng di động 4 Theo định nghĩa của W3C (World Wide Web Consortium): • Dịch vụ Web là một hệ thống phần mềm được thiết kế để hỗ trợ khả năng tương tác giữa các ứng dụng trên các máy tính khác nhau thông qua mạng Internet, giao diện chung và sự gắn kết của nó được mô tả bằng XML. • Là tài nguyên phần mềm có thể xác định bằng địa chỉ URL. • Thực hiện các chức năng và đưa ra các thông tin người dùng yêu cầu. • Ứng dụng cơ bản của Dịch vụ Web là tích hợp các hệ thống. • Các ứng dụng được tích hợp với cơ sở dữ liệu và các ứng dụng khác, người sử dụng sẽ giao tiếp với CSDL để tiến hành phân tích và lấy dữ liệu. 1.2 Các công nghệ xây dựng dịch vụ Web Xây dựng và triển khai Web Service cho ứng dụng di động 5  Phân loại theo Công nghệ sử dụng để xây dựng dịch vụ Web cho ứng dụng di động dùng .NET Framwork (phiên bản 4.5.3), hiện nay có các công nghệ chính sau: • Web Service • WCF Service • WCF REST Service • Web API Service 1.3 Đặc điểm của dịch vụ Web Xây dựng và triển khai Web Service cho ứng dụng di động 6 Ưu điểm • Cung cấp khả năng hoạt động rộng lớn với các ứng dụng phần mềm khác nhau chạy trên những nền tảng khác nhau. • Sử dụng các giao thức và chuẩn mở. • Nâng cao khả năng tái sử dụng. • Thúc đẩy đầu tư các hệ thống phần mềm đã tồn tại. • Tạo mối quan hệ tương tác lẫn nhau và mềm dẻo giữa các thành phần trong hệ thống, dễ dàng cho việc phát triển các ứng dụng phân tán. • Thúc đẩy hệ thống tích hợp, giảm sự phức tạp của hệ thống, hạ giá thành hoạt động, phát triển hệ thống nhanh và tương tác hiệu quả với hệ thống của các doanh nghiệp khác. 1.3 Đặc điểm của dịch vụ Web Xây dựng và triển khai Web Service cho ứng dụng di động 7 Khuyết điểm • Vào những khoảng thời gian chết của Web service sẽ dẫn đến những thiệt hại lớn:  Giao diện không thay đổi  Có thể lỗi nếu một máy khách không được nâng cấp  Thiếu các giao thức cho việc vận hành • Có quá nhiều chuẩn cho Web Service khiến người dùng khó nắm bắt. • Phải quan tâm nhiều hơn đến vấn đề an toàn và bảo mật. 1.4 Kiến trúc của dịch vụ Web Xây dựng và triển khai Web Service cho ứng dụng di động 8  Mô hình hoạt động của dịch vụ Web 1.4 Kiến trúc của dịch vụ Web Xây dựng và triển khai Web Service cho ứng dụng di động 9  Dịch vụ Web gồm có 4 chuẩn chính: • SOAP (Simple Object Access Protocol) • WSDL (Web Service Description Language) • UDDI (Universal Description, Discovery, and Integration) • REST (Representational State Tranfer) 1.4 Kiến trúc của dịch vụ Web Xây dựng và triển khai Web Service cho ứng dụng di động 10 1.4 Kiến trúc của dịch vụ Web Xây dựng và triển khai Web Service cho ứng dụng di động 11  Dịch vụ Web 1.0: dùng SOAP 1.4 Kiến trúc của dịch vụ Web Xây dựng và triển khai Web Service cho ứng dụng di động 12 SOAP ? • SOAP là một giao thức giao tiếp có cấu trúc như XML và mã hóa thành định dạng chung cho các ứng dụng trao đổi với nhau. • Ý tưởng bắt đầu từ Microsoft và phần mềm Userland. • Một đặc tả việc sử dụng các tài liệu XML theo dạng các thông điệp. • Đặc tả về SOAP định nghĩa một mô hình trao đổi dữ liệu dựa trên 3 khái niệm cơ bản: Các thông điệp là các tài liệu XML, chúng được truyền đi từ bên gửi đến bên nhận, bên nhận có thể chuyển tiếp dữ liệu đến nơi khác. 1.4 Kiến trúc của dịch vụ Web Xây dựng và triển khai Web Service cho ứng dụng di động 13 Đặc trưng của SOAP - SOAP được thiết kế đơn giản và dễ mở rộng. - Tất cả các message SOAP đều được mã hóa sử dụng XML. - SOAP sử dùng giao thức truyền dữ liệu riêng. - Không có garbage collection phân tán, và cũng không có cơ chế tham chiếu. Vì thế SOAP client không giữ bất kỳ một tham chiếu đầy đủ nào về các đối tượng ở xa. - SOAP không bị ràng buộc bởi bất kỳ ngôn ngữ lập trình nào hoặc công nghệ nào. 1.4 Kiến trúc của dịch vụ Web Xây dựng và triển khai Web Service cho ứng dụng di động 14 Hệ thống Soap đơn giản Cấu trúc thông điệp SOAP 1.4 Kiến trúc của dịch vụ Web Xây dựng và triển khai Web Service cho ứng dụng di động 15 Dịch vụ Web 2.0: dùng REST 4 nguyên tắc thiết kế cơ bản: • Sử dụng phương thức HTTP rõ ràng. • Phi trạng thái. • Hiển thị cấu trúc thư mục URIs • Chuyển đổi JSON/ XML hoặc cả hai. 1.4 Kiến trúc của dịch vụ Web Xây dựng và triển khai Web Service cho ứng dụng di động 16 REST ? REST (Representational State Tranfer) là một kiến trúc phần mềm cho các hệ thống phân tán siêu truyền thông như WWW, được chọn sử dụng rộng rãi thay cho Web service dựa trên SOAP và WSDL. Đặc trưng của REST • Là dạng client – server. • Phân tách giao diện của client ra khỏi dữ liệu. • Cho phép mỗi thành phần phát triển độc lập. • Hỗ trợ đa nền tảng. • Mỗi yêu cầu từ client phải có đủ thông tin cần thiết để server có thể hiểu được mà không cần phải lưu trữ thêm thông tin nào trước đó. • Tất cả tài nguyên được truy cập thông qua một interface thống nhất (HTTP GET, PUT, POST, DELETE, ...). 1.5 Các thành phần chính của dịch vụ Web Xây dựng và triển khai Web Service cho ứng dụng di động 17  XML – eXtensible Markup Language/ JSON (JavaScript Object Notation)  WSDL – Web Service Description Language Universal Description, Discovery, and Integration (UDDI)  SOAP – Simple Object Access Protocol  RSS – Really Simple Syndication  RDF – Resource Description Framework  RESTful - Representational State Transfer  WADL - Web Application Description Language 1.5 Các thành phần chính của dịch vụ Web Xây dựng và triển khai Web Service cho ứng dụng di động 18  XML – eXtensible Markup Language • Một chuẩn mở do W3C đưa ra cho cách thức mô tả dữ liệu • Dùng để định nghĩa các thành phần dữ liệu trên trang web và cho những tài liệu B2B. • Kiến trúc nền tảng cho việc xây dựng một Web service, dữ liệu sẽ được chuyển sang định dạng thẻ XML hoặc JSON.  JSON (JavaScript Object Notation) • Định nghĩa dữ liệu theo ngôn ngữ JavaScript, tiêu chuẩn ECMA-262 năm 1999. • Cấu trúc là một định dạng văn bản đơn giản với các trường dữ liệu được lồng vào nhau. • Là cấu trúc dữ liệu phổ dụng hiện nay. 1.5 Các thành phần chính của dịch vụ Web Xây dựng và triển khai Web Service cho ứng dụng di động 19  WSDL – Web Service Description Language Universal Description, Discovery, and Integration (UDDI): định nghĩa một tài liệu XML mô tả giao diện của các dịch vụ web. 1.5 Các thành phần chính của dịch vụ Web Xây dựng và triển khai Web Service cho ứng dụng di động 20  RESTful - Representational State Transfer - Là một dịch vụ web đơn giản sử dụng HTTP và tính chất của REST. - Là một tập tài nguyên các thành phần được định nghĩa: o URI gốc cho dịch vụ web. o MIME type hỗ trợ bởi dịch vụ web. o Tập hành động hỗ trợ bởi dịch vụ web sử dụng phương thức HTTP (GET, POST, PUT, DELETE). 1.5 An toàn cho dịch vụ Web Xây dựng và triển khai Web Service cho ứng dụng di động 21  Việc đảm bảo an toàn cho dịch vụ Web là một vấn đề quan trọng.  Đảm bảo an toàn cho Web Service: • WS-Security (bảo mật cho Web service) - chuẩn an toàn bao trùm cho SOAP, nó được dùng khi muốn xây dựng những Web service toàn vẹn và tin cậy. • Các thành phần được thêm vào: WS-Secure Conversation Describes, WS-Authentication Describes, WS-Policy Describes hay WS-Trust Describes, ... 1.6 Xây dựng một dịch vụ Web Xây dựng và triển khai Web Service cho ứng dụng di động 22  Có 4 giai đoạn chính để xây dựng một dịch vụ Web • Giai đoạn xây dựng: phát triển và chạy thử ứng dụng dịch vụ Web, xây dựng các chức năng và định nghĩa dịch vụ. Có 2 cách : o Red-path- solod o Blue-path-dashed • Giai đoạn triển khai • Giai đoạn tiến hành • Giai đoạn quản lý 1.6 Xây dựng một dịch vụ Web Xây dựng và triển khai Web Service cho ứng dụng di động 23  Có 4 giai đoạn chính để xây dựng một dịch vụ Web • Giai đoạn xây dựng • Giai đoạn triển khai công bố định nghĩa dịch vụ, xây dựng WSDL và triển khai mã thực thi của dịch vụ Web. • Giai đoạn tiến hành tìm kiếm và gọi thực thi dịch vụ Web bởi những người sử dụng dịch vụ. • Giai đoạn quản lý quản lý và quản trị dịch vụ, duy trì sự ổn định của dịch vụ, cập nhật thông tin mới, sửa lỗi khi nó xảy ra. 1.6 Xây dựng một dịch vụ Web Xây dựng và triển khai Web Service cho ứng dụng di động 24  Qui trình xây dựng một dịch vụ Web bao gồm các bước sau: 1. Định nghĩa và xây dựng các chức năng, các dịch vụ mà dịch vụ sẽ cung cấp. 2. Tạo WSDL cho dịch vụ. 3. Xây dựng SOAP hoặc REST server 4. Đăng ký WSDL với UDDI registry để cho phép các client có thể tìm thấy và truy xuất. 5. Client nhận tập tin WSDL và từ đó xây dựng SOAP hoặc REST client để có thể kết nối với SOAP hoặc REST server 6. Xây dựng ứng dụng phía client và sau đó gọi thực hiện dịch vụ thông qua việc kết nối tới SOAP hoặc REST server. 1.7 Tích hợp dịch vụ Web theo chuẩn Xây dựng và triển khai Web Service cho ứng dụng di động 25 Giám sát (monitoring) Giám sát các dịch vụ Web chạy như thế nào qua toàn bộ mạng, từ một chi nhánh con của một công ty trên mạng tới các chi nhánh khác trong công ty hay giao tiếp với doanh nghiệp khác. Xác định đường đi dữ liệu (Data routing) Hướng tới tối đa hóa khả năng sử dụng lại. Những thể hiện của cùng một thành phần có thể dễ dàng được sử dụng lại trong các ứng dụng phân tán khác bởi vì chúng hoàn toàn độc lập và không phụ thuộc lẫn nhau. 1.7 Tích hợp dịch vụ Web theo chuẩn Xây dựng và triển khai Web Service cho ứng dụng di động 26 Triển khai (Deployment) Triển khai các dịch vụ Web có khả năng nâng cấp, điều khiển và cấu hình các thành phần từ xa thông qua mạng phân tán. Quản lý (Management) Có thể xây dựng theo kiến trúc P2P (Peer-to-Peer) Cấu hình và quản lý phiên bản (Configuration and version management) Sử dụng các công cụ linh hoạt để quản lý các phiên bản khác nhau của dịch vụ Web, cho phép các phiên bản được nâng cấp và điều khiển từ một công cụ quản lý tập trung. 1.7 Tích hợp dịch vụ Web theo chuẩn Xây dựng và triển khai Web Service cho ứng dụng di động 27 Bảo mật (Security) Dịch vụ Web kết hợp với những công nghệ có khả năng bảo mật cao. 1. Giới thiệu về dịch vụ Web (Web Service) 2. Giới thiệu về IIS (Internet Information Service) ● Hướng dẫn cách cài đặt IIS ● Hướng dẫn cách cấu hình để đưa Web Service lên IIS Nội dung Xây dựng và triển khai Web Service cho ứng dụng di động 28 2.1 Hướng dẫn cài IIS (Internet Information Service) Xây dựng và triển khai Web Service cho ứng dụng di động 29 Đối với Windows 7 và Windows 8: Vào Control Panel → Programs and Features → Turn Windows features on or off → Chọn Internet Information Service → Nhấn OK và chờ vài phút để hệ thống cập nhật lại. 2.2 Hướng dẫn cách cấu hình để đưa Web Service lên IIS Xây dựng và triển khai Web Service cho ứng dụng di động 30 Khởi động IIS Vào Control Panel → System and Security → Administrative Tools chọn Internet Information Services (IIS) Manager. Chọn Application Pools → tạo thêm 2 Application Pools là: ASP.NET v4.0 (chọn Integrated) và ASP.NET v4.0 Classic (chọn Classic) tất cả phần .NET Framework chọn v4.0.30319. 2.2 Hướng dẫn cách cấu hình để đưa Web Service lên IIS Xây dựng và triển khai Web Service cho ứng dụng di động 31 Add Web service Chuột phải vào Sites → Add Website... Trong đó: •Physical path: thư mục chứa dịch vụ web của bạn. •Site name: tên dịch vụ web của bạn. •Application pool: chọn .Net 4.0 •Port: mặc định là 80, có thể thay thế bằng các cổng khác nhưng không được trùng với các cổng website/ web service trước của bạn. 2.2 Hướng dẫn cách cấu hình để đưa Web Service lên IIS Xây dựng và triển khai Web Service cho ứng dụng di động 32 Chạy Web service •Nhấp chuột vào Web service vừa tạo ra trong thư mục site → nhấp vào Content View. •Nhấp chuột phải vào trang cần chạy → chọn trình duyệt để chạy. Xây dựng và triển khai Web Service cho ứng dụng di động 33
Tài liệu liên quan