首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在ajax get-method Javascript中发送对象

在ajax get-method Javascript中发送对象
EN

Stack Overflow用户
提问于 2016-01-20 20:35:50
回答 1查看 82关注 0票数 0

我正在尝试使用这个rest-method从数据库接收一个User-object:

代码语言:javascript
复制
@RestController
@RequestMapping("/rest/users")
public class UserRestController {

    @Autowired
    private UserService service;

@RequestMapping(method = RequestMethod.GET)
 public Collection<User> getAllUsers(@RequestBody(required = false) User user) throws BadHttpRequest {
        System.out.println(user);//ALWAYS RETURNING NULL :(
        if (user == null) {
            return service.getAllUsers(); //Always returns this!
        } else if (user.getUserId() == null) {
            return Collections.singletonList(service.getUserByEmail(user.getUsername()));//I  want this
        } else if(user.getUsername() == null){
            return Collections.singletonList(service.getUserById(user.getUserId()));
        }else{
            throw new BadHttpRequest(new Exception("User id/email mismatch"));
        }
    }

我使用这个javascript:

代码语言:javascript
复制
var user = [{ "username": "fms7@hotmail.no", "userId": 1}];

$.ajax({
    type: "get",
    url: "/rest/users/",
    data: JSON.stringify({ User: user }),
    success: function(data){alert(data);},
    error: function(errMsg) {
        alert("bais");
    }
});

有谁知道我做错了什么吗?

EN

回答 1

Stack Overflow用户

发布于 2016-01-20 21:24:28

我认为这是在制造问题。

代码语言:javascript
复制
data: JSON.stringify({ User: user })

您应该将其更改为:

代码语言:javascript
复制
data: { User:JSON.stringify(user) }

希望能有所帮助。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34900268

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档