Có vẻ như bạn muốn tạo một dịch vụ web mà người khác có thể kết nối, gửi câu trả lời và truy xuất kết quả.
Nếu đúng như vậy, bạn có ba tùy chọn, SOAP, XML-RPC và REST. Nếu đó là một API đơn giản, SOAP (và có lẽ XML-RPC) sẽ là quá mức cần thiết - bạn không muốn phải tạo một tệp WSDL, cài đặt thư viện máy chủ SOAP (mặc dù, Zend_Soap đủ phong nha). Mặt khác, REST sẽ cho phép mọi người dễ dàng sử dụng API của bạn.
Hãy xem xét một ví dụ, nói rằng bạn muốn cung cấp một đơn giản "tiền" dịch vụ (ví dụ, thêm một vài số điện thoại), bạn có thể có một URI scheme như thế này:
http://example.com/sum
để tổng hợp số 5, 8 và 9 người sử dụng dịch vụ web của bạn sẽ Pligg thực hiện một HTTP GET để
http://example.com/sum/5/8/9
chúng ta hãy giả vờ trong một khoảnh khắc mà tổng kết thực sự là một nhiệm vụ rất đắt tiền nên bằng cách sử dụng RES T và GET bạn có thể tận dụng lợi thế của bộ đệm ẩn HTTP để máy chủ của bạn không bị ảnh hưởng liên tục khi ai đó gửi cùng các tham số để tính toán.
Nếu dịch vụ web của bạn có tài nguyên không có tác dụng phụ (nghĩa là nó thay đổi thứ gì đó trong cơ sở dữ liệu), bạn nên sử dụng PUT, POST hoặc DELETE (PUT để cập nhật, POST để tạo và DELETE để xóa) các thông số HTTP nêu rõ các GET không nên có các tác dụng phụ. Tương tự, PUT và DELETE sẽ an toàn để lặp lại nếu bạn gặp lỗi hoặc kết nối mạng hết giờ.
Có một cuộc nói chuyện tốt (video và slide) trên REST đây: http://www.parleys.com/display/PARLEYS/Home#talk=31817742
Bạn muốn mọi người kết nối với API của bạn như thế nào? –
có nghĩa là bạn đang nói về phương pháp? Nhận OR POSt? – Avinash