[Android Cơ Bản] Giao thức Soap trong Android

Hi các em, trong bài ngày hôm nay thầy giới thiệu tới các em khái niệm Soap trong lập trình Android dùng để kết nối, truyền tải dữ liệu.
Nội dung trong bài gồm có 3 phần :

  1. Soap là gì ?
  2. Ví dụ
  1. Soap là gì ?

SOAP (Simple Object Access Protocol) là 1 phương thức để truy cập Web Service, SOAP được phát triển bởi Microft . Ngoài SOAP ra thì có lẽ các bạn đi làm sẽ quen thuộc với khái niệm Restful hơn.
Thực tế hiện nay thì SOAP cũng không còn được dùng phổ biến như Restful do yêu cầu phức tạp về tạo request cũng như bóc tách response.
Tuy nhiên vẫn còn có những dự án sử dụng nên thầy viết bài này để mn tìm hiểu thêm về khái niệm SOAP

Đặc điểm :

SOAP sử dụng XML để định nghĩa các request và response ví dụ mẫu request và response

Request
Response

Bản chất SOAP là 1 HTTP POST Request với phần body là xml tuân theo quy tắc do SOAP đưa ra

Khi tạo 1 SOAP Request các bạn cần có những thông số sau :

ACTION, METHOD, PARAM và URL

URL : là địa chỉ nhận HTTP POST

METHOD : là tên phương thức nhận tham số

PARAM : là các tham số

ACTION : là địa chỉ xử lý tham số từ phương thức

Để làm rõ các trường thông tin trên chúng ta sẽ làm 1 ví dụ đổi từ độ C sang độ F hoặc ngược lại với URL SOAP sau : https://www.w3schools.com/xml/tempconvert.asmx

Mở link trên trình duyệt các bạn sẽ lấy ra các thông số sau :

Từ các thông tin bôi đen các bạn có được các thành phần trong request như sau :

URL : https://www.w3schools.com/xml/tempconvert.asmx
PARAM : Celsius
ACTION : https://www.w3schools.com/xml/CelsiusToFahrenheit
METHOD : CelsiusToFahrenheit

Để viết SOAP request trong ví dụ này viết 1 AsyncTask và sử dụng thư viện Ksoap2-Android .

Code mẫu các bạn có thể tham khảo tại link gốc :
https://code.tutsplus.com/tutorials/consuming-web-services-with-ksoap–mobile-21242