Сегодня я обсуждал с коллегой использование строк запроса в URL-адресах REST. Возьмем эти два примера:
1. http://localhost/findbyproductcode/4xxheua
2. http://localhost/findbyproductcode?productcode=4xxheua
Моя позиция заключалась в том, что URL-адреса должны быть разработаны, как в примере 1. Это более чисто и, как мне кажется, правильно в REST. На мой взгляд, было бы совершенно правильно вернуть ошибку 404 из примера 1, если код продукта не существует, тогда как в примере 2 возврат 404 был бы неправильным, поскольку страница должна существовать. Его позиция заключалась в том, что на самом деле это не имеет значения и что они оба делают одно и то же.
Поскольку ни один из нас не смог найти конкретных доказательств (правда, мой поиск не был обширным), я хотел бы узнать мнения других людей по этому поводу.