Có tồn tại nhiều loại và vĩ độ về "dịch vụ web". Tôi thấy hữu ích khi ghi chú rõ ràng về những gì chúng ta đang nói về:
web = transported over HTTP(S)
service = remote procedure call (RPC)
Lưu ý rằng phần HTTP (S) này chỉ xác định phương tiện giao thông, chứ không phải nội dung. Cũng lưu ý rằng phần RPC của điều này chỉ xác định hành vi (về cơ bản gọi một hàm được đặt tên từ xa với các đối số trả về một kết quả) nhưng không phải là nội dung.
Câu hỏi quan trọng nảy sinh là liệu bạn có kiểm soát được cả hai mặt của giao tiếp hay không. Nếu vậy, nhưng đặc biệt là nếu không, bạn cần phải quan tâm về khả năng tương tác.
SOAP là tiêu chuẩn để triển khai dịch vụ web chỉ định sử dụng XML được định dạng cụ thể cho nội dung của yêu cầu và phản hồi. Nó là RẤT nặng, và vẫn còn có vấn đề với khả năng tương tác trên nhiều triển khai khác nhau.
Có rất nhiều triển khai tùy chỉnh, hầu hết trong số đó là nhẹ hơn, nhưng bạn gần như chắc chắn sẽ có vấn đề về khả năng tương tác.
Vì bất kỳ hình thức nội dung nào có thể được sử dụng để đạt được dịch vụ web, tôi khuyên bạn nên chọn thứ gì đó có thể xử lý nội dung phức tạp (với các mức độ khác nhau), chuẩn hóa, nhẹ và mạnh mẽ.
Tôi gần đây đang hướng tới JSON cho định dạng nội dung. Tôi khuyên bạn nên xem xét tương tự, đặc biệt là nếu bạn đang xem xét việc thực hiện AJAX.
Lời chúc tốt đẹp nhất.
Nguồn
2008-12-18 19:59:29
Bạn đã quyết định trên nền tảng chưa? Java, C#, cái gì khác? Bạn đang chết vì sử dụng SOAP hay bạn mở một cái gì đó RESTful thay vào đó? –