Невозможно отправить параметры в сервлете - PullRequest
0 голосов
/ 25 августа 2018

У меня есть угловой код

app.controller('add', function ($scope, $http) {
    $scope.add = function() {
        $scope.msg = "no connect";

        var data = {name:'soso',description:'buba',method:'POST'};

        $http.post(host + "/add-component",data)
            .then(function (response) {
                $scope.msg = response.data;
            });

    }
});

в моем сервлете, я хочу его поймать

resp.setContentType("application/json; charset = utf8");
String name = req.getParameter("name");
String description = req.getParameter("description");

но мое имя и описание оба = null;

1 Ответ

0 голосов
/ 25 августа 2018

Вы отправляете data как тело запроса POST, а не параметры запроса. Это задокументировано в угловых документах для почтового метода :

строка URL-адреса
Относительный или абсолютный URL, указывающий место назначения запроса

данные *
Запрос содержимого

Посмотрите на этот ответ, чтобы узнать, как прочитать тело запроса .

В наши дни проще использовать Spring Boot или другие платформы для обработки конечных точек на стороне сервера. В использовании сервлетов нет ничего плохого, но вам придется самостоятельно писать больше кода.

...