Sử dụng .NET để consume RESTful Web Services

Sử dụng .NET để consume RESTful Web Services

Xây dựng ứng dụng áp dụng RESTful Web Services – sử dụng .NET để consume RESTful Web Services viết bằng java như là client

Mục đích: Chủ đề của bài này giới thiệu về cách consume RESTful Web Services viết bằng java bằng công nghệ .NET để cho thấy tính uyển chuyển và đơn giản của RESTful khi xử lý bằng một client khác ngôn ngữ - đơn giản hơn rất nhiều so với việc sử dụng .NET để consume các dạng kỹ thuật công nghệ của web services khác

Yêu cầu về kiến thức cơ bản cho các khái niệm về RESTFul Web Services

  • Nắm vững các khái niệm về MVC, khái niệm liên quan đến Service Oriented Architecture (SOA), kiến trúc của Web Services

  • Nắm vững các khái niệm về Web Services với các công nghệ và framework như

    • AXIS 2 (Loạt bài về xây dựng web services với axis2)

    • JAX-WS (Xây dựng Web Service sử dụng Web Server Tomcat và sử dụng service áp dụng MVC Pattern trên Web)

    • JAX-RPC

    • JAX-RS (Xây dựng Web Services đơn giản với RESTful Web Services)

    • Xây dựng Web Services RESTful để xử lý object

  • Nắm vững khái niệm về ngôn ngữ lập trình Java, lập trình thao tác hướng đối tượng

  • Nắm vững khái niệm về lập trình web sử dụng J2EE hay JavaEE với các kiến thức về Servlet, JSP

  • Nắm vững khái niệm về cơ chế Filter và RequestDispatcher trong Servlet

  • Nắm vững toàn bộ cách thức vận dụng và xây dựng ứng dụng hoàn chỉnh ứng dụng áp dụng web services với các công nghệ nêu trên

Vận dụng .NET để consume RESTful Web Services của các bài trước (tham khảo các bài Giới thiệu về RESTful Web Services, Xây dựng ứng dụng áp dụng RESTful Web Services – xử lý object – truyền và nhận object)

  • Yêu cầu

    • Nắm vững các khái niệm về MVC, khái niệm liên quan đến Service Oriented Architecture (SOA), kiến trúc của Web Services, RESTful (từ đơn giản đến xử lý object)

    • Nắm vững về ngôn ngữ lập trình Java, lập trình thao tác hướng đối tượng

    • Nắm vững cách thức cài đặt của JAX-RPC, JAX-WS, Axis2, JAX-RS

    • Cách thức sử dụng JSP, Servlet

    • Tools sử dụng ở đây là Netbeans 6.9.1

    • JDK 6 update 22

    • Server: Tomcat 6.0.26

    • Thư viện hỗ trợ: JAX-RS, Jersey. Driver 4 loại 4 kết nối DB (sqljdbc.jar, sqljdbc4.jar)

  • Các bước thực hiện

  • Tạo project ASP.NET website trong Visual Studio (chúng tôi đang sử dụng Visual Studio 2005) với hình form hỗ trợ phép toán cộng 02 số của RESTful Web Services đơn giản và RESTFul Webservices xử lý object dạng như sau

Sử dụng .NET để consume RESTful Web Services

  • Chuyển qua môi trường NETBeans, start server Tomcat và deploy lại 02 RESTful Web Services (nếu chưa) để start 02 Web Services này để .NET có thể consume chúng

  • Chuyển lại tool Visual Studio và mở code trang Default.aspx.cs

    • Để hỗ trợ thư viện kết nối và thao tác dữ liệu kết nối thông qua network và đón nhận dữ liệu kiểu tập hợp hay mảng object chúng ta cần import thư viện với System.NET, System.IO, System.Collections.Generic

    • Trong phát sinh biến cố click của hàm add, sau đó thực hiện code cho hàm này.

    • Trong hàm addClick, chúng ta tạo kết nối từ Client thông qua WebClient

    • Xác định url để truy vấn dữ liệu từ RESTful tương tự như java

    • Chúng ta lấy kết quả tra về thông qua hàm DownloadString của WebClient

  • Chúng ta tiếp tục phát sinh biến cố cho nút Subtract và viết code tương tự cho hàm add nhưng chuỗi kết nối là khác

  • Tương tự chúng ta phát sinh biến cố cho nút Search và viết code tương tự như hàm add, ngoại trừ

    • Vì RESTful xử lý object trả về dạng xml, do vậy, ở .NET dưới vai trò client, chúng ta thực hiện lấy dữ liệu dưới dạng xml về dạng file thay vì dạng string như trong hàm add và substract với phương thức DownloadFile

    • Khi đó có file xml, chúng ta nạp xml vào trong data grid với phương thức ReadXml

    • Cập nhật lại lưới với phương thức DataBind của data grid

  • Chúng ta thực hiện Build code và chạy ứng dụng trên Visual Studio

    • Bây giờ chúng ta đang chạy 02 server, server hỗ trợ services RESTful bằng ngôn ngữ Java của Tomcat và client hỗ trợ ứng dụng Web với .NET framework của IIS

    • Demo thể hiện tính tối ưu của Web Services về độc lập platform và tính đơn giản rất nhiều của RESTful Web Services

Chúc mừng các bạn đã nâng cao kỹ năng về Web Services vì chúng ta đã sử dụng web services theo đúng khái niệm về độc lập platform – không lệ thuộc ngôn ngữ lập trình bởi vì chỉ cung cấp dịch vụ và sử dụng dịch vụ nơi cung cấp mà không lệ thuộc.

Chúng tôi hy vọng nội dung của bài này giúp ích các bạn trong việc sử dụng web services với nhiều cách khác nhau, cụ thể là ngôn ngữ khác nhau và thấy được tính tối ưu cùng với cách giao tiếp sử dụng thông qua XML.

Rất mong sự góp ý chân thành và chia sẻ của quí vị về vấn đề này. Hẹn gặp lại quý vị ở các chủ đề khác.

Bạn thấy bài viết này như thế nào?: 
No votes yet
Ảnh của Tommy Tran

Tommy owner Express Magazine

Drupal Developer having 9+ year experience, implementation and having strong knowledge of technical specifications, workflow development. Ability to perform effectively and efficiently in team and individually. Always enthusiastic and interseted to study new technologies

  • Skype ID: tthanhthuy

Advertisement

 

jobsora

Dich vu khu trung tphcm

Dich vu diet chuot tphcm

Dich vu diet con trung

Quảng Cáo Bài Viết

 
Hướng dẫn viết Drupal 8 Image Effect Plugin cho Image Styles

Hướng dẫn viết Drupal 8 Image Effect Plugin cho Image Styles

Recently at Drupal South I had the opportunity to upgrade the Image Style Quality module to Drupal 8

Hướng dẫn thay đổi độ giãn chữ trong word

Hướng dẫn thay đổi độ giãn chữ trong word

Sau khi kích nút OK, đoạn font chữ đã chọn sẽ có kết quả nhấp nháy theo loại đã chọn ở ô Animations

Docker làm virtualization cho Project Development và Testing trong Drupal

Docker làm virtualization cho Project Development và Testing trong Drupal

Docker has quickly become the favorite virtualization tool for many people including myself.

Công ty diệt chuột T&C

 

Diet con trung