POST
Hinh 5.8 chỉ ra giao diện ứng dụng đơn giản được dùng để kiểm tra dịch vụ với chức năng POST dữ liệu
Cũng như kiểm tra chức năng POST trong Google Chrome, dữ liệu được truyền vào theo form với các tham số tương ứng, nhấn nút invoke để thực hiện, kết quả trả về 1 là thành công, -1 là thất bại.
GET
Hinh 5.9 chỉ ra giao diện ứng dụng đơn giản được dùng để kiểm tra dịch vụ với chức năng GET dữ liệu, cột mã yêu cầu liệt kê danh sách các mã yêu cầu cùng với các liên kết đến tài nguyên khác, khi kick vào một trong các liên kết thì có nghĩa là thực hiện chức năng GET dữ liệu, với các tham số truyền theo kiểu query và cho kết quả như hình 5.10.
KẾT LUẬN
Hầu hết các hệ thống dựa trên nền web ngày nay có thể được truy cập từ bất kỳ nơi đâu trên thế giới thông qua web. Trong project demo này, dịch vụ RESTful được thực thi trong phần thiết kế RESTful API, và kết quả nhận được thật sự rất thỏa đáng. Do đó có thể nói rằng các hệ thống dựa trên nền web có nhiều yêu cầu phức tạp tuy nhiên có thể dễ dàng thực hiện với REST.
Sau một thời gian tìm hiểu và thiết kế REST API, thì tác giả có thể nói rằng kiểu kiến trúc REST là một giải pháp rất thích hợp đối với các hệ thống trên nền web. REST có thể thay thế XML-RPC API và GUI API với một REST API chung và duy nhất mà vẫn có thể điều khiển được tất cả các dịch vụ. REST API đã được kiểm chứng rằng cả máy tính và con người sử dụng REST mà dữ liệu được trả về theo nhiều kiểu đại diện khác nhau. Hơn nữa với một API chung thực sự là rõ ràng hơn, ràng mạch hơn, và có thể sử dụng lại API này cho các hệ thống web khác khi REST là chung thực sự. REST cũng đã chứng tỏ được rằng ngay khi hiểu được các khái niệm chính của REST thì nhiệm vụ thiết kế một API theo các nguyên tắc đó không đến nỗi phức tạp như ban đầu mới tiếp xúc REST.
• Hoàn thành nội dung, nhiệm vụ của đề tài: ▫ Tìm hiểu và ứng dụng REST
▫ Tìm hiểu và sử dụng thư viện JAX-RS
▫ Xây dựng thử nghiệm hệ thống SMS Gateway sử dụng API theo nguyên tắc của REST dùng thư viện JAX-RS
• Một số hạn chế và hướng phát triển:
▫ Hạn chế: Các web service xây dưng trong ứng dụng chưa đạt được bảo mật qua cơ chế chặn IP gọi web service
▫ Hướng phát triển:Xây dựng web service ở mất bảo mật khác ngoài cơ chế chặn IP.
TÀI LIỆU THAM KHẢO
[1] Bill Burke (2009). RESTful java with JAX-RS. O‟Reilly, 1st edition.
[2] R. Fielding et al (1999). Hypertext Transfer Protocol – HTTP/1.1. IETF RFC 2616. [3] T. Berners-Lee et al (1996). Hypertext Transfer Protocol – HTTP/1.0. IETF RFC 1945.
[4] R. Fielding et al (1997). Hypertext Transfer Protocol – HTTP/1.1. IETF RFC 2068. [5] R. Fielding, editor (2006). RFC for REST. REST Discussion Mailing List.
[6] R. Fielding (2000). Architectural Styles and The Design of Network-based Software Architectures. PhD thesis, University of California, Irvine.
[7] L. Richardson, S. Ruby, et al (2007). Restful Web Services. O‟Reilly, 1st edition. [8] World wide web consortium (2004). http://www.w3.org/. W3C.
[10] M. Gudgin et al (2007). SOAP Version 1.2 Part 1: Messaging Framework (Second Edition). W3C Recommendation. W3C.
[11] E. Christensen et al (2001). Web Services Description Language (WSDL) 1.1. W3C Note. W3C.
[12] C. Pautasso, O. Zimmermann, and F. Leymann (2008). RESTful Web Services vs. "Big" Web Services: Making the Right Architectural Decision. IW3C2.
[13] Restful webservices (2008). http://www.slideshare.net/gouthamrv/restful-services- 2477903.
[14] P. James. Http caching (2006). http://www.peej.co.uk/articles/http-caching.html. [15] Nadia Mohedano Troyano (2010). The Design of a RESTful Web Service. PhD thesis, kungliga tekniska hÖgskolan school of electrical engineering tnssm.
PHỤ LỤC
Một số giao diện demo của chương trình ứng dụng RESTful
Hình 1: Giao diện login vào hệ thống
Hình 3: Danh sách kết quả tìm kiếm các MO
Hình 5: Chức năng POST (thêm mới) tài nguyên