java contenttype_POST不同提交方式对应的Content-Type,及java服务器接收参数方式

简介:

Content-Type(MediaType),即是Internet Media Type,互联网媒体类型;也叫做MIME类型,在Http协议消息头中,使用Content-Type来表示具体请求中的媒体类型信息.参考

response.Header里常见Content-Type一般有以下四种:

application/x-www-form-urlencoded

multipart/form-data

application/json

text/xml

详解:

1.application/x-www-form-urlencoded

application/x-www-form-urlencoded是最常见的Content-Type,form表单默认提交方式对应的content-type.

当action为get时候,浏览器用x-www-form-urlencoded的编码方式把form数据转换成一个字串(name1=value1&name2=value2...),然后把这个字串追加到url后面,用?分割,加载这个新的url.

当action为post,且表单中没有type=file类型的控件时,Content-Type也将采用此编码方式,form数据将以key:value键值对的方式传给server.

表单提交:

后台:

import java.io.Serializable;

public class Student implements Serializable {

private String name;

private String hobby;

private int age;

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public String getHobby() {

return hobby;

}

public void setHobby(String hobby) {

this.hobby = hobby;

}

public int getAge() {

return age;

}

public void setAge(int age) {

this.age = age;

}

}

@RequestMapping(value = "/test", method = RequestMethod.POST)

public String test(Student student) {

System.out.println(student.getName());

return "/test1";

}

2.multipart/form-data

当post表单中有type=file控件时content-type会使用此编码方式.

表单提交:

后台:

@RequestMapping(value = "/test", method = RequestMethod.POST)

public String test(Student student,@RequestParam(value = "file1", required = false) MultipartFile file1) {

System.out.println(student.getName());

return "/test1";

}

3.application/json

随着json规范的流行,以及前后端分离趋势所致,该编码方式被越来越多人接受.

前后端分离后,前端通常以json格式传递参数,因此该编码方式较适合RestfulApi接口.

前端传参:

$.ajax({

url: '/test',

type: 'POST',

data: {

"name": "zhangsan",

"age": 12,

"hobby": "football"

},

dataType: "json",

success: function (date) {

}

})

后台:

@RequestMapping(value = "/test", method = RequestMethod.POST)

public String test(@RequestBody Student student) {

System.out.println(student.getName());

return "/test1";

}

4.text/xml

XML-RPC(XML Remote Procedure Call)。它是一种使用 HTTP 作为传输协议,XML 作为编码方式的远程调用规范。

soapUI等xml-rpc请求的参数格式.

提交参数:

zhangsan

12

footbal

分类: java

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值