前后台 restful api 中的POST请求踩坑实录

来源:互联网 发布:淘宝怎么开网店 编辑:程序博客网 时间:2024/06/05 17:34

最近在学习spring cloud 不但对JAVA的微服务架构有了些许了解

在动手编写微服务架构的时候,接触到了 restful api 的编写。

首先呢 这个restful api 之前就有听说过,苦于公司项目一直没有应用,当时的印象就是这个跟传统的传参方式也差不多,直到最近实操了一下,真的是很省事也很爽。

本人实测了两个常用请求方式GET 和 POST

GET呢就不说了这个跟传统差不多,在操作POST的时候碰到点坑,在此记录一下

首先是页面的AJAX

function doAjax(method,url,data,func){            if(method=="GET"){                //其他逻辑暂时不做            }else if(method=="POST"){                //其他逻辑暂时不做            }else{                return false;            }            console.log(data);            $.ajax({               type: method,               url: url,               data: JSON.stringify(data),                dataType:'json',                  headers:{                      Accept:"application/json",                      "Content-Type":"application/json"                  },                 success: function(msg){                 func(msg);               }            });        }

坑1: Content-Type 的默认类型是 text/html 如果不做更改 在请求的时候会报错
415:不认识的媒体类型
坑2 : data 这个参数传进来的时候是个对象 需要使用 JSON.stringify(data),(我
没试过不转~~,感觉会有坑就加上了 有兴趣的童鞋可以尝试一下)

下面是后台代码 后台我采用的java的spring boot(不要问我为什么是JAVA 因为从工作角度讲,JAVA真的是太好找工作了)

这里只贴一下controller

@RestControllerpublic class ShenCeController {    @PostMapping("save")    public String shenCeSave(            @RequestBody(required=true) JSONObject parm,            HttpServletRequest request            ){    System.out.println(parm.toJSONString());    //开始写业务逻辑    }}

JAVA 中的两个注解 需要新点版本的spring mvc 支持~具体版本没有考究过,反正我公司的spring mvc 不支持
至此一次完整 restful 风格的POST请求就完成了,开始写业务逻辑吧

原创粉丝点击