Использование HTTP OPTIONS для получения информации о ресурсах REST - PullRequest
2 голосов
/ 23 апреля 2009

Эта проблема относится к фреймворку Restlet и Java

Когда клиент хочет обнаружить ресурсы, доступные на сервере, он должен отправить HTTP-запрос с OPTIONS в качестве типа запроса. Это хорошо, я думаю, для не читаемых человеком клиентов - то есть в коде, а не в браузере.

Проблема, которую я вижу здесь, заключается в том, что браузеры (удобочитаемые для человека), использующие GET, НЕ смогут быстро обнаружить доступные им ресурсы и найти дополнительную справочную документацию и т. Д., Поскольку они не используют OPTIONS в качестве типа запроса.

Есть ли способ заставить браузер отправлять запрос OPTIONS / GET, чтобы сервер мог запустить отформатированный XML-код клиенту (как это происходит в Restlet - то есть ответ сервера должен отправить всю информацию обратно в виде XML) , а отобразить это в браузере? Или я неправильно понял свое мнение, т. Е. Смысл OPTIONS в том, что он предназначен для использования внутри кода клиента, а не для чтения через браузер.

Ответы [ 2 ]

1 голос
/ 23 апреля 2009

Я думаю, что OPTIONS не предназначен для того, чтобы быть «видимым для пользователя».

Как бы вы отправили запрос ОПЦИИ из браузера? (обратите внимание, что только элемент формы допускает GET и POST).

Вы можете отправить его, используя XmlHttpRequest , а затем вернуть XML в обратном вызове Javascript и соответствующим образом отобразить его. Но я не уверен, что это то, что должен знать ваш пользователь!

1 голос
/ 23 апреля 2009

Используйте TunnelService (который по умолчанию уже включен) и просто добавьте параметр запроса method=OPTIONS в свой URL.

(FAQ по рестайту Q19 - похожий вопрос.)

...