Здравствуйте!
Пытаюсь прописать POST-запрос к серверу с помощью ajax-функции.
При тестировании выдаёт исключение:
"Request method 'POST' not supported"
Не могу понять где ошибка.
ajax-функция:
function createXMLHttp() {
var Request = false;
if (window.XMLHttpRequest)
{
Request = new XMLHttpRequest();
}
return Request;
}
function getAjax(url, callback) { // функция Ajax GET
// создаем Объект
var oXmlHttp = createXMLHttp();
var body='aggregate='+encodeURIComponent('value');
// подготовка, объявление заголовков
oXmlHttp.open("POST", url, true);
oXmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=utf-8");
// описание функции, которая будет вызвана, когда придет ответ от сервера
oXmlHttp.onreadystatechange = function() {
if (oXmlHttp.readyState == 4) {
if (oXmlHttp.status == 200) {
callback(oXmlHttp.responseText);
} else {
callback(oXmlHttp.statusText);
}
}
}
oXmlHttp.send(body);
}
function printGet(text) {
alert(text);
}
<form name="form" method="POST">
<input type="text" name="aggregate"/>
<button type="submit" onclick="getAjax('/fast-water/water/download',printGet)">Загрузить</button>
</form>
Контроллер java на стороне сервера:
Код:
|
@RequestMapping(value = "/download", method = RequestMethod.POST)//Mapping web context, на который будет реагировать метод
public @ResponseBody String download(@RequestParam(value = "aggregate",defaultValue ="something") String value) {
return value;
} |