Ajax-запрос к серверу Jetty на том же узле

Я хочу использовать html/js в качестве графического интерфейса для своих Java-приложений, и для этого у меня есть http-сервер Jetty, работающий на порту 8040.

Клиентские сценарии выполняются на сервере Mongoose на порту 8080 с использованием метода jQuery AJAX get().

При выполнении запроса AJAX я получаю

XMLHttpRequest cannot load http://localhost:8040/. Origin http://localhost:8080 is not  allowed by Access-Control-Allow-Origin.

Я немного погуглил и обнаружил, что это известно как Политика единого происхождения, и если я правильно понимаю, скрипт не может сделать запрос на другой порт по тому же адресу? Итак, как мне сделать эту работу, т.е. запускать сервер Java и клиент JavaScript на одном компьютере?


person Theodor    schedule 13.05.2012    source источник


Ответы (1)


Взгляните на эту вики-страницу:

http://wiki.eclipse.org/Jetty/Feature/Cross_Origin_Filter

person jesse mcconnell    schedule 14.05.2012
comment
На самом деле, чтобы все заработало, в пример Jetty HelloWorld нужно было добавить только одну строку кода: response.setHeader("Access-Control-Allow-Origin", "*");. Это привело меня в правильном направлении, хотя. - person Theodor; 14.05.2012