Các cuộc nói chuyện khác nhau mà tôi đã xem và hướng dẫn tôi đã quét trên REST dường như nhấn mạnh một thứ gọi là 'khả năng khám phá'. Theo hiểu biết hạn chế của tôi, thuật ngữ này dường như có nghĩa là một khách hàng sẽ có thể đi đến http://URL
- và tự động nhận được một danh sách những điều nó có thể làm.
Điều tôi gặp khó khăn trong việc hiểu - đó là 'khách hàng phần mềm' không phải là con người. Chúng chỉ là những chương trình không có kiến thức trực quan để hiểu chính xác phải làm gì với các liên kết được cung cấp. Chỉ mọi người có thể đi đến một trang web và hiểu ý nghĩa của văn bản và các liên kết được trình bày và hành động trên nó.
Vì vậy, điểm có thể khám phá là gì, khi mã máy khách truy cập các URL có thể khám phá đó thực sự không thể làm gì với nó, trừ khi nhà phát triển con người của khách hàng thực sự thử nghiệm các tài nguyên được trình bày? Điều này trông giống như chính xác khi xác định tập hợp các chức năng có sẵn trong sổ tay Tài liệu, chỉ từ một hướng khác và thực sự liên quan đến nhiều công việc hơn cho nhà phát triển. Tại sao cách tiếp cận thứ hai này của việc xác định trước những gì có thể được thực hiện trong một tài liệu bên ngoài các tài nguyên REST thực tế, được coi là kém hơn?