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