Показать сообщение отдельно
  #1 (permalink)  
Старый 01.06.2019, 13:31
Интересующийся
Отправить личное сообщение для Vladiiimir Посмотреть профиль Найти все сообщения от Vladiiimir
 
Регистрация: 18.05.2019
Сообщений: 19

Исключение 405 при создании POST-запроса с помощью ajax-функции?
Здравствуйте!

Пытаюсь прописать 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;
}
Ответить с цитированием