说明
前端使用 POST 方式发送 json 格式数据,并且指定 Content-Type是:
Content-Type: application/json;charset=utf-8
springmvc接收数据时,形参需要 对象类型,且由 @RequestBody 注解修饰
例子
jquery
详见:
https://www.malaoshi.top/show_1IX71XNeq3C3.html
axios
以 post 方法发请求时,默认就是提交 Json 格式数据,详见:
https://www.malaoshi.top/show_1IXIZt4apDp.html
java
@RestController
@Slf4j
public class NoticeController {
@PostMapping(value="/sendNotice")
public CommonResult sendNotice(@RequestBody Notice notice){
noticeService.sendNotice(notice);
log.info(String.format("%s 向 %s 发送通知成功!",notice.getFromUserid(),notice.getToUserid()));
return new CommonResult(200,"成功!");
}
}
package top.malaoshi.entities;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
@Data
@NoArgsConstructor
@AllArgsConstructor
public class Notice implements Serializable {
private String id;
private String fromUserid;
private String toUserid;
private String msg;
}
package top.malaoshi.json;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* json封装类
* 将执行成功、失败的信息封装成类,返回给前端json
* @param <T>
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
public class CommonResult<T>{
private Integer code;
private String msg;
}
发送请求
postman
注意: 上图中传递的是json格式
axios
post 默认提交方式,详见下面链接:
https://www.malaoshi.top/show_1IXIZt4apDp.html
jquery
使用较少,下面代码微测试
$.ajax(
type:"POST",
url:"test",
data:'{"id":"12","name":"小明"}'
success:function(msg){alert(msg);}
contentType:"application/json;charset=utf-8" //关键
)
微服务
A 服务器 调用 B服务,传递json数据
