(1) Важно выбрать хорошие имена для ваших ресурсов REST.Я бы предложил, чтобы ваши имена ресурсов (URI) выглядели примерно так:
.../books/user/bob
.../books/recentlyadded
Код, реализующий эти ресурсы, возвращает представления, представляющие собой списки книг (где представление каждой книги может иметь заголовок, автора, ISBNномер, URI изображения и т. д.).Вы можете назвать эти модули UserBooksResource и RecentAddedBooksResource, возможно.Имена не должны иметь большого значения, так как они могут быть изменены без влияния на ваш фактический API REST (т. Е. Имена ресурсов URI, представления, глаголы операций HTTP и т. Д.)
(2) Безопасность можетбыть сделано несколькими способами.Например, если вы находитесь в мире Java, проверьте безопасность Spring Framework.Это вставляет обработку входа в систему над сервлетами, производящими представления.Или рассмотрите возможность использования структуры Restlet, которая имеет отличную поддержку REST и включает понятие Guards, которые создают проблемы безопасности до того, как запрос попадет в ваш код ресурса REST.Restlet также предоставляет чистые способы генерирования различных видов представлений для одного и того же ресурса (например, XML плюс JSON плюс XHTML в зависимости от того, что клиент запрашивает в своем заголовке Accept).
Если вы можете, изучите Richardson иВеб-службы RESTFul (O'Reilly) от Ruby - очень четкое объяснение того, как реализовать службы REST.