Hướng dẫn làm web service php
Bạn đã từng nghe về web service ? Web service là gì ? Cách hoạt động của nó như thế nào? Trong bài viết này mình sẽ giới thiệu đến các bạn về định nghĩa web service, đặc điểm của web service và hướng dẫn các bạn cách hiện thực 1 web service đơn giản, cơ bản cho những bạn mới bắt đầu tìm hiểu về web service với PHP. Show Mục lục
1. Web services là gì ?Web service là một tập các phương thức được gọi thực hiện từ xa thông qua một địa chỉ url. Kết quả trả về của web service thường dưới dạng json hoặc xml. Web service thường được sử dụng để tạo các ứng dụng phân tán. Kiến trúc webservice đơn giản2. Đặc điểm của web service– Không phụ thuộc vào ngôn ngữ lập trình – Có thể được truy cập từ bất cứ ứng dụng nào – Hỗ trợ thao tác giữa các thành phần không đồng nhất – Chi phí phát triển thấp – Dễ bảo trì 3. Tạo web service với PHP và MySQLỞ phần này, mình sẽ hướng dẫn các bạn cách tạo 1 web service đơn giản, có chức năng cung cấp toàn bộ danh sách user có trong database dưới dạng json và xml. Bước 1 : Tạo một bảng là users sẽ chứa thông tin thành viên của ứng dụng web như là : username, password, name, email,… CREATE TABLE IF NOT EXISTS `users` ( `id` int(11) NOT NULL AUTO_INCREMENT, `username` varchar(30) NOT NULL, `password` varchar(30) NOT NULL, `name` varchar(255) NOT NULL, `email` varchar(255) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ; Bạn nên insert một vài mẫu dữ liệu vào bảng users này để chúng ta có dữ liệu để test. Bước 2 : Tạo một thư mục tên là webservice, đặt trong thư mục gốc của website. Tiếp đến trong thư mục webservice, tạo 1 file đặt tên là connection.php. File này có trách nhiệm tạo kết nối đến cơ sở dữ liệu.
http://localhost/webservice?getUser&format=json
http://localhost/webservice?getUser&format=xml Với các tham số được truyền vào này, service sẽ thực thi việc truy vấn dữ liệu trong db, trả ra dữ liệu dưới dạng json hoặc xml toàn bộ thông tin user có trong db. Chẳng hạn với json, dữ liệu trả ra sẽ có định dạng như sau : {"users":[{"user":{"id":"1",'username":"teo123","password":"123456",name :"Nguyen Van Teo","email":""}},{"user":{"id":"2",'username":"ti123","password":"123456",name :"Nguyen Van Ti","email":""}},{"user":{"id":"3",'username":"tam123","password":"123456",name :"Nguyen Van Tam","email":""}}} Còn đối với xml dữ liệu trả ra sẽ như sau :
Bước 5 : Tùy thuộc vào mục đích sử dụng, dữ liệu trả về sẽ được xử lý khác nhau theo ý muốn người sử dụng. Để có thể lấy được dữ liệu từ service, ta sẽ dùng phương thức curl hoặc file_get_contents. Tạo một file là client.php, đặt trong thư mục webservice. Nội dung file này đơn giản chỉ là lấy dữ liệu trả về từ webservice thông qua url và xử lý dữ liệu đó theo 1 mục đích nào đó. Đoạn code trong client.php sẽ như sau : //Lấy dữ liệu trả về dạng xml $du_lieu_tra_ve_xml = file_get_contents("http://localhost/webservice?getUser&format=xml"); //Lấy dữ liệu trả về dạng json $du_lieu_tra_ve_json = file_get_contents("http://localhost/webservice?getUser&format=json"); //Code Xử lý dữ liệu trả về theo ý của bạn ... 4. Tổng kếtTừ ví dụ ở mục 3, các bạn chỉ cần hiểu đơn giản webservice chỉ là 1 dịch vụ, mà tại đó nó nhận yêu cầu thông qua url và các tham số, sau đó nó sẽ xử lý trả về dữ liệu dưới định dạng xml hoặc json theo yêu cầu của người dùng dịch vụ. Xây dựng webservice rất có lợi vì định dạng json hoặc xml là định dạng dữ liệu có thể sử dụng trên nhiều nền tảng như di động (android, ios,…), website (php, jsp,…) Nguồn : kungfuphp.com Mình là Hiếu. ►Nếu bạn thấy bài viết bạn đang đọc hữu ích, hãy mời mình một ly cafe nhé : https://kungfuphp.com/donate |