: bắt đầu đoạn văn : xuống dòng , ,…: đặt dòng văn nằm cặp thẻ tiêu đề (heading) * Thẻ ghi Cũng ngơn ngữ lập trình, phép người viết trang web đặt ghi dành riêng cho vào trang web, HTML cung cấp thẻ ghi Đây thẻ đặc biệt so với thẻ khác: KHOA CÔNG NGHỆ THÔNG TIN Chương 7: Web Services CHƯƠNG 7: WEB SERVICES Giới thiệu: Giới thiệu web Services ứng dụng Mục tiêu: - Trình bày kiến thức Web services Xây dựng ứng dụng có sử dụng Web services Nội dung chính: 7.1 Tìm hiểu Web services Khi bạn xây dựng phát triển ứng dụng phân tán với số lượng người dùng lên đến hàng trăm, hàng nghìn người nhiều địa điểm khác nhau, khó khăn mà bạn gặp phải giao tiếp Client Server bị tường lửa (firewalls) Proxy Server ngăn chặn lại Như bạn biết DCOM (Distribited Component Object Model) làm việc thông qua việc gởi thông tin dạng nhị phân (binary) chủ yếu hoạt động dựa giao thức TCP/IP Thật không dễ dàng để sử dụng DCOM trường hợp Web Services giúp bạn giải vấn đề khó khăn nêu Chúng ta hiểu Web Services (tạm dịch dịch vụ web) tập hợp phương thức đối tượng mà Client gọi thực Hình 7-1 Kiến trúc web Services Web Services xây dựng dựa SOAP (Simple Object Access Protocal) Không giống DCOM, SOAP gọi thực trả kết Text (theo định dạng XML) có khả hoặt động "xuyên qua" tường lửa KHOA CÔNG NGHỆ THƠNG TIN 161 Chương 7: Web Services Ngồi khả ưu việt trên, Web Services phối hợp hoạt động ứng dụng tốt Hình minh họa trang bên ví dụ minh họa phối hợp hoạt động ứng dụng Các nhà hàng, khách sạn cung cấp Web Services cho phép đặt phòng, đặt tiệc Đường sắt Việt Nam cung cấp Web Services cho phép đặt vé tàu Việt Nam Airline cung cấp Web Services cho phép đặt vé cho chuyến bay Các quan, công ty, hay khách du lịch có nhu cầu tổ chức, tham gia chuyến du lịch truy cập vào website công ty dịch vụ lữ hành đăng ký tham gia "tour" họ tổ chức Công ty du lịch sử dụng Web Services cung cấp để tiến hành đặt vé tàu lửa, máy bay đặt phòng cho chuyến du lịch theo yêu cầu khách hàng Hình 7-2 Mơ hình phối hợp hoạt động ứng dụng Web Services chuẩn để xây dựng phát triển ứng dụng phân tán, có khả làm việc hệ điều hành, mở rộng khả phối hợp ứng dụng, tái sử dụng, tăng cường giao tiếp Client Server thông qua môi trường Web KHOA CÔNG NGHỆ THÔNG TIN 162 Chương 7: Web Services Hình 7-3 XML định dạng chuẩn Web Services 7.2 Xây dựng Web services 7.2.1 Tạo Web Services Visual studio Net Trong phần này, xây dựng Web Service đơn giản có tên webService1, với phương thức Add, Subtract, Multiply, Divide Từ project chuột phải chọn Add -> New Items… từ thực đơn ngữ cảnh Project Chọn mục Web Service (ASMX) khung Template Đổi tên Web Service cần tạo thành WebService1.asmx Hình 7-4 Tạo Web Service KHOA CÔNG NGHỆ THÔNG TIN 163 Chương 7: Web Services Trong cửa sổ viết lệnh, có phương thức mẫu tạo sẵn phương thức HelloWorld Hình 7-2: Giao diện sau tạo Web service thành công Nhận thấy trước phương thức HelloWorld có sẵn từ khóa Chúng ta bổ sung vào phương thức: public class WebService1 : System.Web.Services.WebService { [WebMethod] public int Add(int a, int b) { return (a + b); } [WebMethod] public System.Single Subtract(System.Single A, System.Single B) KHOA CÔNG NGHỆ THÔNG TIN 164 Chương 7: Web Services { return (A - B); } [WebMethod] public System.Single Multiply(System.Single A, System.Single B) { return A * B; } [WebMethod] public System.Single Divide(System.Single A, System.Single B) { if (B == 0) return -1; return Convert.ToSingle(A / B); } } 7.2.2 Kiểm tra Web Service Sau xây dựng thành công Web Service, trước đưa vào sử dụng, nên tiến hành kiểm tra Web Service Các Web Service xây dựng Visual Studio.Net tự động phát sinh trang kiểm tra tương ứng Để thực điều này, ta chọn WebService1.asmx làm trang khởi động, nhấn F5 để thi hành ứng dụng KHOA CÔNG NGHỆ THÔNG TIN 165 Chương 7: Web Services Hình 7-5 Giao diện kiểm tra Web Service Trang kiểm tra Web Service liệt kê phương thức có Web Service chọn thi hành Chọn phương thức cần kiểm tra Ở đây, chọn phương thức Add Xuất hình nhập tham số cho phương thức: Hình 7-6 Giao diện nhập tham số kiểm tra Web Service Nhập tham số cần thiết nhấn nút Invoke để thi hành, thấy xuất trang kết hình bên KHOA CƠNG NGHỆ THƠNG TIN 166 Chương 7: Web Services Hình 7-7 Kết sau chọn Invoke để thực phương thức 7.3 Sử dụng Web services Sau hoàn tất việc xây dựng, kiểm tra độ tin cậy tính xác Web Service, tiến hành đưa Web Service vào sử dụng Để sử dụng Web Service, Client cần phải biết Web Service hỗ trợ phương thức nào, phương thức cần có tham số nào, kết trả sao… Những thông tin Web Service mô tả tài liệu WSDL (Web Service Description Language) WSDL định dạng chuẩn để mô tả Web Service, sử dụng ngơn ngữ XML Chúng ta xem WSDL Web Service cách thêm vào chuỗi tham số wsdl vào sau chuỗi URL 7.3.1 Sử dụng Web Services người dùng xây dựng Sử dụng Web Service xây dựng tương tự việc sử dụng lớp đối tượng Ví dụ: protected void Page_Load(object sender, EventArgs e) { webService1.WebService1SoapClient w = new webService1.WebService1SoapClient(); Label1.Text = w.Add(5, 8).ToString(); } KHOA CÔNG NGHỆ THÔNG TIN 167 Chương 7: Web Services 7.3.2 Sử dụng Web Services cung cấp miễn phí mạng Để biết Web Services cung cấp miễn phí mạng, bạn dùng google để thực tìm kiếm Ở đây, giới thiệu đến bạn trang: http://www.webservicex.net cung cấp nhiều Web Services hữu ích Trong phần này, hướng dẫn bạn sử dụng Web Services để lấy thông tin tỷ giá ngoại tệ, thơng tin thời tiết, thành phố quốc gia đơn vị tiền tệ quốc gia giới Các bước thực hiện: Bước Chọn Add Web Reference… từ thực đơn ngữ cảnh ứng dụng Bước Nhập thông tin đường dẫn WebService, nhấn để thực việc xác thực Web Service (ví dụ: http://localhost:8090/WebService1.asmx) Bước Nếu Web Service xác thực thành công, thông tin mô tả Web Service hiển thị phía bên Bước Đặt tên tham chiếu cho WebService: Web reference name Bước Nhấn Add Reference để hoàn tất tham chiếu WebService Bước Thiết kế hình Hình 7-8 Giao diện Add Web Service vào project KHOA CÔNG NGHỆ THÔNG TIN 168 Chương 7: Web Services Mở trang Default.aspx kéo thả control Label vào có id=”Label1” code xử lý sau: protected void Page_Load(object sender, EventArgs e) { webService1.WebService1SoapClient w = new webService1.WebService1SoapClient(); Label1.Text = w.Add(5, 8).ToString(); } 7.4 Xây dựng Web services truy xuất liệu Web Service: wbsListsinhvien.asmx Trong phần này, phối hợp lớp xử lý có để xây dựng Web service hiển thị danh sách sinh viên Trong ví dụ minh họa đây, xây dựng ba thủ tục: Bước 1: Tạo Web Service với tên wbsListsinhvien.asmx Bước 2: Viết code hiển thị danh sách sinh viên vào đối tượng DataTable public class wbsListsinhvien : System.Web.Services.WebService { [WebMethod] public DataTable Danh_Sach_SV() { ClsData cls = new ClsData(); DataTable dt = new DataTable(); string str = "SELECT top 20 MSSV,HO+' '+TEN as 'Họ tên',MAL,PHAI,NGAYSINH,NOISINH,DCLL,PHONE FROM SINHVIEN"; dt = cls.getTable(str); if (dt.Rows.Count > 0) return dt; else KHOA CÔNG NGHỆ THÔNG TIN 169 Chương 7: Web Services return null; } } Bước 3: Chạy kiểm tra web Service hoạt động với tên vừa tạo (wbsListsinhvien.asmx) Bước 4: Add Web Service vào References project đặt tên list_sinhvien Bước 5: Tạo trang web với tên sinhvien.aspx với control Gridview code xử lý sau: public partial class sinhvien : Page { protected void Page_Load(object sender, EventArgs e) { wbsListsinhvien sv = new wbsListsinhvien(); if(!IsPostBack) { this.GridView1.DataSource = sv.Danh_Sach_SV(); this.GridView1.DataBind(); } } } Bước 6: Chạy trang sinhvien.aspx xem kết KHOA CÔNG NGHỆ THÔNG TIN 170 Chương 7: Web Services Hình 7-9 Kết xem danh sách sinh viên qua Web Service 7.5 Bài tập Áp dụng Web Service cho phép người dùng thao tác thêm sinh viên Áp dụng Web Service cho phép người dùng thao tác xóa sinh viên Áp dụng Web Service cho phép người dùng thao tác sửa thông tin sinh viên Áp dụng Web Service cho phép người dùng thao tác tìm kiếm thông tin sinh viên Vận dụng web Service lấy thông tin thời tiết online? Vận dụng web Service lấy thông tin tỷ giá USD online? KHOA CÔNG NGHỆ THÔNG TIN 171 TÀI LIỆU THAM KHẢO [1] Nguyễn Minh Đạo, “Giáo trình Lập trình Web với ASP.NET”, ĐHQG TP.HCM, 2014 [2] Phạm Thi Vương, “Tài liệu hướng dẫn thực hành công nghệ Web ASP.Net”, ĐHQG TP.HCM, 2019 [3] William Penberthy, “Beginning asp.net for visual studio 2015”, Wrox, 2016 [4] https://docs.microsoft.com/en-us/visualstudio/?view=vs-2019, 12/8/2020 KHOA CÔNG NGHỆ THÔNG TIN 172 DANH MỤC HÌNH ẢNH Hình 1-1 Sử dụng chung phần tài nguyên server 14 Hình 1-2 Tách biệt hệ thống quản lý database 14 Hình 1-3 Mơ hình máy chủ load balancer 15 Hình 1-4 Mơ hình Accelertor 16 Hình 1-5 cấu hình master-slave database replicate 17 Hình 3-1 Kết hộp thoại hỏi tên người dùng 34 Hình 3-2 Kết tính tổng 36 Hình 3-3 Kết vịng lặp for 41 Hình 3-4 Kết xuất mảng 45 Hình 3-5 Kết sử dụng hàm tính toán 47 Hình 3-6 Kết hàm chuyển đổi chuỗi 48 Hình 3-7 Kết chuyển số nguyên 49 Hình 3-8 Kết chuyển số thực 50 Hình 3-9 Dưới mơ hình DOM 51 Hình 3-10 Kết sử dụng kiện 57 Hình 4-1 Internet Information Services 61 Hình 4-2 Bảng cấu hình mặt định website 61 Hình 4-3 Bảng kiểm tra website 62 Hình 4-4 Địa để nhập vào trang web 62 Hình 4-5 Thư mục gốc website 63 Hình 4-6 Net Phatform 63 Hình 4-7 Kiến trúc Net Framework 64 Hình 4-8 Mơ hình truy cập trang ASP.NET 69 Hình 4-9 Quá trình xử lý tập tin ASPX 70 Hình 4-10 Tạo poject web 71 Hình 4-11 Chọn thơng tin cho project 71 Hình 4-12 Các phiên làm việc cho web asp.net 72 Hình 4-13 Màn hình Microsoft Visual Studio Net 72 Hình 4-14 Kết chạy lần đầu 73 Hình 4-15 cửa sổ Solution Explorer 74 Hình 4-16 Property/Toolbox 76 Hình 4-17 Các điều khiển HTML công cụ 77 Hình 4-18 Trang Columns 93 Hình 4-19 Trang Paging 95 Hình 4-20 Trang Format 96 Hình 4-21 Hình canh chỉnh Borders 97 Hình 4-22 Danh sách nhân viên xếp 100 Hình 4-23 Kết phân trang 101 Hình 4-24 Bổ sung cột phái 102 Hình 4-25 Giao diện tạo lệnh thêm/ xóa/ sửa 105 Hình 4-26 Hiển thị danh sách sản phẩm 114 Hình 4-27 Giao diện thiết kế DataList 121 Hình 5-1 Mối quan hệ Session Application 130 KHOA CƠNG NGHỆ THƠNG TIN 173 Hình 5-2 Mơ hình làm việc Cookies 133 Hình 5-3 Thơng báo lỗi trang 140 Hình 5-4 Trang lỗi, khơng hiển thị mã lỗi 140 Hình 5-5 Thông báo lỗi trang ASP.NET 140 Hình 6-1 Kiến trúc ADO.NET 143 Hình 6-2 Mơ hình kết nối sở liệu 144 Hình 7-1 Kiến trúc web Services 161 Hình 7-2 Mơ hình phối hợp hoạt động ứng dụng 162 Hình 7-3 XML định dạng chuẩn Web Services 163 Hình 7-4 Tạo Web Service 163 Hình 7-5 Giao diện kiểm tra Web Service 166 Hình 7-6 Giao diện nhập tham số kiểm tra Web Service 166 Hình 7-7 Kết sau chọn Invoke để thực phương thức 167 Hình 7-8 Giao diện Add Web Service vào project 168 Hình 7-9 Kết xem danh sách sinh viên qua Web Service 171 KHOA CÔNG NGHỆ THÔNG TIN 174 DANH MỤC BẢNG BIỂU Bảng 3-1 Bảng toán tử 38 Bảng 3-2 Bảng số kiện javascript 57 Bảng 3-3 Bảng số kiện có sẵn đối tượng 57 Bảng 4-1 Phân loại tập tin 73 Bảng 4-2 Thuộc tính chung web Control 80 Bảng 4-3 Bảng thuộc tính chung Button, ImageButton, LinkButton 82 KHOA CÔNG NGHỆ THÔNG TIN 175 ... MINH GIÁO TRÌNH MƠN HỌC: XÂY DỰNG ỨNG DỤNG WEB NGHỀ: HỆ THỐNG THƠNG TIN TRÌNH ĐỘ: CAO ĐẲNG THÔNG TIN CHỦ NHIỆM ĐỀ TÀI Họ tên: Nguyễn Gia Quang Đăng Học vị: Thạc sỹ Đơn vị: Khoa Công nghệ thông. .. mơ hình lập trình Web Trình bày giao thức cơng nghệ Web Trình bày thành phần ngơn ngữ JavaScript Trình bày chức Web Server Control Trình bày kiến trúc cộng nghệ ADO.NET Trình bày qui trình kết... 165 7.3 Sử dụng Web services 167 7.3.1 Sử dụng Web Services người dùng xây dựng 167 7.3.2 Sử dụng Web Services cung cấp miễn phí mạng 168 7.4 Xây dựng Web services truy