Говорят, что в четко определенной системе RESTful клиентам нужно знать только корневой URI или несколько хорошо известных URI, и клиент должен обнаружить все другие ссылки через эти исходные URI. Я понимаю преимущества (развязанные клиенты) от этого подхода, но недостатком для меня является то, что клиенту необходимо обнаруживать ссылки каждый раз, когда он пытается получить доступ к чему-то, что дает следующую иерархию ресурсов:
/collection1
collection1
|-sub1
|-sub1sub1
|-sub1sub1sub1
|-sub1sub1sub1sub1
|-sub1sub2
|-sub2
|-sub2sub1
|-sub2sub2
|-sub3
|-sub3sub1
|-sub3sub2
Если мы следуем принципу "Клиент должен знать только корневой URI", то клиент должен знать только о корневом URI i.e./collection1 выше, а остальные URI должны быть обнаружены клиентами через гипермедиа-ссылки. Я считаю, что это громоздко, потому что каждый раз, когда клиент должен делать GET, скажем, на sub1sub1sub1sub1, если клиент сначала выполнит GET on/collection1 и последующую ссылку, определенную в возвращаемом представлении, а затем сделает еще несколько GET на вспомогательных ресурсах, чтобы достичь желаемый ресурс? или мое понимание о связности совершенно неверно?
С уважением, Суреш