vue-resource和springmvc 交互 404怎么解决?

发布于 2022-09-05 08:38:32 字数 1176 浏览 15 评论 0

spring mvc 中有这样一个方法

@RequestMapping(value = "/getMenuList")
@ResponseBody
public List getMenuList(@RequestBody HashMap user) {
    user.put("cous", new ArrayList<HashMap>());
    this.iUserService.getMenuList(user);
    List<HashMap> menus = (List<HashMap>) user.get("cous");
    List<HashMap> resultMenus = new ArrayList<>();
    packMenus(resultMenus,null,menus,null);
    return resultMenus;
}

通过vue-resource调用

        this.$http.jsonp('http://192.168.0.103:8080/cqpt/user/getMenuList',{miperson:1,mimenup:1}).then(function(response) {
            // 这里是处理正确的回调
            console.log("ok")
            // this.articles = response.data["subjects"] 也可以

        }, function(response) {
            // 这里是处理错误的回调
            console.log("error")
        });

错误码:
Failed to load resource: the server responded with a status of 400 (Bad Request)

如果是这样的无参的请求就没问题

@RequestMapping(value = "/test")
@ResponseBody
public List test(){
    System.out.print("");
    return null;
}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

话少情深 2022-09-12 08:38:32

400 表示前端提供的数据格式和后台需要的数据格式不一样

@RequestBody需要把所有请求参数作为json解析,因此,不能包含key=value这样的写法在请求url中,所有的请求参数都是一个json

一句话:你使用 vue-resource 发送 jsonp 请求的数据格式不是 @RequestBody 需要的


给个链接看看

补贴一个连接给你哦

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文