HTTP-сервер MarkLogic: настройка заголовков CORS

Я бегаю MarkLogic 7 на CentOS 6.5 box. У меня HTML/JS приложение размещено на HTTP-сервере MarkLogic на том же компьютере. Приложение работает на порту 8003, и ему требуется доступ к данным через REST API, запущенный на другом порту 8007. Когда я использую запрос AJAX в своем приложении, я получаю сообщение об ошибке

No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://172.16.100.104:8003' is therefore not allowed access.  

Кто-нибудь раньше настраивал MarkLogic на CORS? Любая помощь была бы замечательной.


person Krishna Chaitanya    schedule 17.06.2014    source источник


Ответы (1)


Вы можете использовать https://docs.marklogic.com/xdmp%3aadd-response-header, чтобы установить заголовок Access-Control-Allow-Origin. Вам нужно будет сделать это для каждой конечной точки, которая должна использовать межсайтовые запросы: https://developer.mozilla.org/en-US/docs/Web/HTTP/Access_control_CORS содержит подробную информацию.

person mblakele    schedule 17.06.2014
comment
Просто ради любопытства, знаете ли вы, как я могу это сделать, если я использую встроенный REST API MarkLogic для доступа к моей базе данных? - person Krishna Chaitanya; 23.06.2014
comment
Встроенные конечные точки REST API, похоже, не поддерживают какой-либо механизм для добавления произвольных заголовков ответов. Однако вы должны иметь возможность добавлять свои собственные заголовки при написании расширения REST: docs.marklogic. com / guide / rest-dev / extensions Для встроенных конечных точек вы можете рассмотреть возможность маршрутизации запросов через другой уровень сервера приложений или прозрачный обратный прокси. В любом случае цель состояла бы в том, чтобы перенаправить запросы, чтобы браузер считал, что оба экземпляра REST API находятся на одном сервере. - person mblakele; 24.06.2014