Điều này có thể thực sự thuộc về các bình luận trong một số bài viết ở trên, nhưng tôi chưa có đại diện để làm điều đó, vì vậy hãy tiếp tục.
Tôi nghĩ điều thú vị là rất nhiều ưu và nhược điểm thường được trích dẫn cho SOAP và REST (IMO) rất ít liên quan đến các giá trị hoặc giới hạn thực tế của hai công nghệ. Có lẽ chuyên gia được trích dẫn nhiều nhất cho REST là nó "nhẹ" hoặc có xu hướng "con người dễ đọc" hơn. Ở một cấp độ, điều này chắc chắn đúng, REST có rào cản gia nhập thấp hơn - có cấu trúc ít bắt buộc hơn SOAP (mặc dù tôi đồng ý với những người đã nói rằng công cụ tốt phần lớn là câu trả lời ở đây - công cụ SOAP quá tệ là khá ghê).
Tuy nhiên, ngoài chi phí nhập ban đầu đó, tôi nghĩ rằng ấn tượng REST đến từ sự kết hợp giữa dạng URL yêu cầu và độ phức tạp của dữ liệu được trao đổi bởi hầu hết các dịch vụ REST. REST có xu hướng khuyến khích các URL yêu cầu đơn giản hơn, con người dễ đọc hơn và dữ liệu cũng có xu hướng dễ tiêu hóa hơn. Tuy nhiên, những điều này vốn có đối với REST ở mức độ nào và ở mức độ nào chúng chỉ là tình cờ. Cấu trúc URL đơn giản hơn là kết quả trực tiếp của kiến trúc - nhưng nó có thể được áp dụng tốt như nhau cho các dịch vụ dựa trên SOAP. Dữ liệu dễ tiêu hóa hơn có nhiều khả năng là kết quả của việc thiếu bất kỳ cấu trúc xác định nào. Điều này có nghĩa là bạn nên giữ cho các định dạng dữ liệu của mình đơn giản hoặc bạn sẽ phải làm rất nhiều việc. Vì vậy, đây là cấu trúc bổ sung của SOAP,
Vì vậy, để sử dụng trong việc trao đổi dữ liệu có cấu trúc giữa các hệ thống máy tính, tôi không chắc rằng REST vốn đã tốt hơn SOAP (hoặc thị thực - ngược lại), chúng chỉ khác nhau. Tôi nghĩ rằng so sánh ở trên của REST vs SOAP để nhập động và tĩnh là một sự so sánh tốt. Nơi mà các ngôn ngữ dyanmic có xu hướng gặp rắc rối là việc bảo trì và duy trì hệ thống trong thời gian dài (và về lâu dài, tôi không nói một hoặc 2 năm, tôi đang nói 5 hoặc 10). Sẽ rất thú vị để xem liệu REST có gặp phải những thách thức tương tự theo thời gian hay không. Tôi có xu hướng nghĩ rằng nó sẽ như vậy nếu tôi đang xây dựng một hệ thống xử lý thông tin, phân tán, tôi sẽ sử dụng SOAP làm cơ chế giao tiếp (cũng vì phân lớp giao thức truyền và ứng dụng và tính linh hoạt mà nó mang lại như đã được đề cập ở trên).
Ở những nơi khác, mặc dù REST có vẻ thích hợp hơn. AJAX giữa máy khách và máy chủ của nó (bất kể trọng tải) là một ví dụ chính. Tôi không quan tâm nhiều đến tuổi thọ của loại kết nối này và tính dễ sử dụng và tính linh hoạt đang ở mức thấp. Tương tự như vậy, nếu tôi cần truy cập nhanh vào một số dịch vụ bên ngoài và tôi không nghĩ rằng mình sẽ quan tâm đến khả năng duy trì của tương tác theo thời gian (một lần nữa tôi cho rằng đây là nơi REST sẽ khiến tôi phải trả nhiều tiền hơn, một cách hoặc khác), thì tôi có thể chọn REST chỉ để tôi có thể ra vào nhanh chóng.
Dù sao, cả hai đều là công nghệ khả thi và tùy thuộc vào sự cân bằng mà bạn muốn thực hiện cho một ứng dụng nhất định mà chúng có thể phục vụ bạn tốt (hoặc kém).