REST не работает с настройкой Север-Клиент-Клиент - PullRequest
0 голосов
/ 03 мая 2010

У меня проблема с моим текущим дизайном API RESTful.

То, что у меня есть, это REST API, который используется веб-сервером Django, который отображает шаблоны HTML.

    REST api 
        > Django webserver
                 > HTML

Проблема, с которой я сталкиваюсь, заключается в том, что мне нужно восстановить все URL-адреса, как

mysite.com/main/cities/<id>/streets/

в эквивалентные URL-адреса остальных уровней на моем уровне веб-сервера:

api.com/cities/<id>/streets/

Таким образом, у меня много сопоставлений туда и обратно, но, насколько я знаю, REST говорит, что клиент (в данном случае мой веб-сервер) НЕ должен знать, как воссоздать URL-адреса.

Можно ли использовать REST для такой настройки и как? Или это возможно только для архитектуры сервер-клиент.

Спасибо

Ответы [ 2 ]

0 голосов
/ 04 мая 2010

Я думаю, что вы пытаетесь сделать это действительно сложно. Предполагая, что ваш веб-сервер использует HTTP должным образом (например, нет состояния сеанса), вы фактически пытаетесь наложить один сервис REST поверх другого сервиса REST. Это означает, что у вас есть «состояние приложения» на уровне веб-сервера, которое вам необходимо передать клиенту и управлять им наряду с фактическим состоянием клиента. Моя голова болит, думая об этом.

Я не видел, чтобы такой тип REST-сервисов выполнялся слишком много. Тем не менее, у Ceasare Pautasso есть исследовательская работа здесь . В его случае он идет дальше и использует два сервиса REST для создания третьего составного сервиса.

0 голосов
/ 04 мая 2010

Почему вы не позволяете веб-серверу переписывать URL-адреса?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...