У меня развернут веб-сервис Java REST на tomcat (http://localhost:8080/myrestfulapp/aservice/).
. В моем приложении qooxdoo я пытаюсь отправить запрос POST с помощью qx.io.remote.Request. Я собрал приложение и развернул его на apacheHTTP-сервер (с именем http://myserver.org). Когда я пытаюсь отправить запрос, я получаю эту ошибку в консоли javascript моего веб-браузера (Chrome на Linux): происхождение http // myserver.org не разрешено Access-Control-Allow-Origin
Я добавил crossdomain.xml в веб-приложение ROOT tomcat, в / var / www и в корневой каталог моего http-сервера. Я включил заголовки apache (заголовки a2enmod) и добавил Access-Control-Allow-Origin«*» в файле конфигурации моего сервера.
вот моя функция qooxdoo, отправляющая запрос:
envoyer : function(id, nom, prenom, poste)
{
var url = "http://localhost:8080/helloworld/enregistrer";
var donnees = "{ \"id\":" + id + ", \"nom\":\"" + nom + "\", \"prenom\":\"" + prenom + "\", \"poste\":\""+poste +"\" }";
alert(donnees);
var req = new qx.io.remote.Request(url, "POST", "application/json");
req.setData(donnees);
req.addListener("completed", function(e) {
alert(e.getContent());
});
req.send();
}
и вот файл конфигурации myserver.org: ServerAdmin webmaster @ localhost serverName myserver.org
DocumentRoot /home/jihedamine/HttpServer
<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>
<Directory /home/jihedamine/HttpServer/>
Header set Access-Control-Allow-Origin "*"
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
Итак, как я могу разрешить отправку http-запросов из разных источников из приложения qooxdoo в серверную часть Java, развернутую на tomcat?