如何使用angularjs向javaapi发送多个参数

wtlkbnrh  于 2021-07-13  发布在  Java
关注(0)|答案(2)|浏览(245)

我有如下java api函数:

public Response abc(@FormParam("tenderIdsJsonArray") JSONArray tenderIdsJsonArray, @FormParam("tenderRejectTime") String tenderRejectTime,@FormParam("rejectResonType")  String rejectResonType) {

     }

我正在从angularjs发送数据

$http({
      method: 'POST',
      url: URL,
      data: {bacJsonArray:[1543],RejectTime:"12",rejectResonType:"test"}    
    }).success(function (response) {
      loaderServ.hide();
      resolve(response);
    }).error(function (error) {
      loaderServ.hide();
      reject(error);
    });

我在api端将函数的所有参数都设置为null
我需要改变的地方
我还尝试发送:

JSON.stringify({bacJsonArray:[1543],RejectTime:"12",rejectResonType:"test"} 
    })

或参数:{alldata}
我还尝试在服务器端进行更改:

public Response abc(JSONArray bacJsonArray,String RejectTime,String rejectResonType) {

     }

但在所有情况下,我都在服务器端接收null

tvz2xvvm

tvz2xvvm1#

在我使用的方法之下,它工作了。

$http({
        method: 'POST',
        url: url,
        headers: {'Content-Type': 'application/x-www-form-urlencoded'},
        transformRequest: function(obj) {
            var str = [];
            for(var p in obj)
            str.push(encodeURIComponent(p) + "=" + encodeURIComponent(obj[p]));
            return str.join("&");
        },
        data: {username: $scope.userName, password: $scope.password}
    }).success(function () {});
af7jpaap

af7jpaap2#

var req = {
    method: 'POST',
    url: 'http://example.com',
    data: { test: 'test' }
};

$http(req).then(function(){
    // success
}, function(){
    error
});

相关问题