如何使用angularjs服务将表单参数传递给Rest?

cgrgcn

我尝试将表单参数传递给java rest后端,但是我不能。

控制器

$scope.addNewThing = function () {
    Myservice.addNew($scope.name);
};

服务

addNew: function (name) {
     var Foo = $resource($rootScope.baseUrl + '/path/addNew', {}, {
          save: {method: 'POST', params: {}}
     });

     var results = Foo.save({name: name}, function(data) {
          results = data;
     });

     return results;
}

//also tried this version of code

addNew: function(name) {

     return $resource($rootScope.baseUrl + '/path/addNew', {}, {
         save: {method: 'POST', params: {name: 'test'}}
     });
}

休息后端功能

@POST
@Produces("application/json")
@Path("/addNew")
public Response addNew(@FormParam("name") String name) {
    try {
         //when i check name here it is always null
         ...
    }
}

我无法通过angular将html表单参数传递给java rest后端。还尝试将其更改@FormParam为,@QueryParam但没有用。

cgrgcn

使用jQuery参数解决了我的问题

这是正确的方法:

    Myservice.addNew().save($.param({
        name:$scope.name
    }),function(data){
        console.log(data);
    },function(err){
         console.log(err);
    });

我可以通过$ resource服务传递这样的参数。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章