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

 
Osama bin Laden bị phát hiện khi đang ẩn náu ở Pakistan

Khủng bố Osama bin Laden bị phát hiện do dây phơi quần áo

Khi thu thập manh mối về nơi ẩn náu của Osama bin Laden, CIA phát hiện khu nhà có dây phơi chăng đầy quần áo dường như là của gia đình trùm khủng bố

Vô hiệu hoá các dịch vụ không mong muốn trong window 7

Trong phần 2 của loạt bài “17 cách để tăng tốc Windows 7″, chúng ta tiếp tục tìm hiểu thêm 6 cách để tăng tốc hiệu quả Windows 7 trên máy tính của mình.

“Mổ xẻ” nguyên nhân vấn nạn tin nhắn rác

“Mổ xẻ” nguyên nhân vấn nạn tin nhắn rác sms

Tỉ lệ ăn chia thấp, sức ép từ doanh thu và sự bất cập từ việc quản lí thuê bao di động trả trước… là ngọn nguồn khiến nạn tin nhắn rác, tin nhắn lừa đảo hoạt động “sôi động” như chưa từng có chế tài xử lí.

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

 

Diet con trung