简介:

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

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

  1. Android向服务器传递参数方式:PostGet

    因为平时开发原因,遇到了问题,都是上网去查询解决方法,但是没有记录的习惯,下次碰见了这个问题又要去网上搜索解决方法,这样既没有效率,又对自己的能力没有多大提升,因此才萌生了写博客的想法.既是将平时遇到 ...

  2. Ajax传值与后端接收参数方式探究

    第一种 表单数据用JQ的serialize()序列化为"k1=v1&k2=v2..."键值对形式,以post请求的方式发送到后台. 而此时默认的contentType: & ...

  3. java接收参数_javaWeb收传参数方式总结

    1.GET和POST请求,在传参方面有什么区别 GET传输的数据存储在URL上进行拼接 POST传输的数据存储在Requst Body(请求体)中 2.http请求中的Content-Type htt ...

  4. java spring框架 注解_史上最全的java spring注解

    史上最全的java spring注解,没有之一 注解是个好东西,但好东西我们也是看见过,整理过,理解过,用过才知道好.不求我们每个都记住,但求保有印象,在需要的时候能提取出来再查找相关资料,平时工作就 ...

  5. Django获取请求参数方式

    前端传参方式 请求行: url传参(/分隔,url路径),查询字符串传参(?开头key=value形式) 请求头: 如cookie 请求体:表单格式,非表单格式如json 请求行url传参: 请求行u ...

  6. 多线程的实现方式_一文搞懂Java多线程使用方式、实现原理以及常见面试题

    本系列文章将整理到我在GitHub上的<Java面试指南>仓库,更多精彩内容请到我的仓库里查看 https://github.com/h2pl/Java-Tutorial 喜欢的话麻烦点下 ...

  7. 线程创建方式3-实现 callable接口(Java)

    线程创建方式3-实现 callable接口(Java) 线程创建方式三:实现 callable接口 callable的好处: 1.可以定返回值 2.可以抛出异常 package src.Demo02; ...

  8. java连接cdh集群_有一台电脑需要通过beeline的方式连接到CDHclouderahadoop集群,提示报错。...

    有一台电脑需要通过beeline的方式连接到CDHclouderahadoop集群,提示报错. 码农的苦恼 2020-02-24 10:25:48 目前客户端服务器已经开通了3000-60000的端口 ...

  9. 获取随机数的方式Random类对象的方法 java 0913

    获取随机数的方式Random类对象的方法 java 0913 Random类 实例化这个类得到一个对象 利用对象的方法获取整数 代码 import java.util.Random;public cl ...

最新文章

  1. 聊聊SwitchUserFilter的使用
  2. docker add-host hostAliases配置/etc/hosts
  3. java 导出excel二维表,如何轻松将EXCEL二维统计表转为数据清单?
  4. win7安装matlab的问题,安装matlab7.0出现问题,我是win7+64位系统,求解
  5. Servlet3.0学习总结(四)——使用注解标注监听器(Listener)
  6. len在python_len在python
  7. 【链接】Solr的Filed中indexed与stored属性
  8. 实现 Virtual DOM 下的一个 VNode 节点
  9. linux box 黑屏,在linux16.04上安装virturalbox的时候出现问题
  10. Use __doPostBack() As A Bridge
  11. U2000V200R018 的安装教程我们用微软的Windows7专业版示例
  12. html怎么实现网页中文件下载功能
  13. 「ZigBee模块」基础实验(2)按键
  14. matlab列联表的独立性检验,(8.4列联表独立性分析案例.ppt
  15. CTF PWN之heap入门 unlink
  16. 成语归类大全(留着,孩子有用的)
  17. 如何思考产品价值定位?
  18. Android Kotlin-协程
  19. matlab 如何使用mex
  20. 计算机二级要学的函数有哪些,2017年计算机二级考试MS office 常用函数

热门文章

  1. matlab集群搭建问题
  2. Vue 页面如何利用生命周期函数监听用户预览时长
  3. 年度总结、下年计划不会做?教给你一个一招致胜的方法
  4. 技术前沿资讯-Apache Flink 1.14 新特性介绍
  5. 产品经理思维模型:产品生命周期
  6. flutter 国际化_从0开始设计Flutter独立APP | 第二篇: 完整的国际化语言支持
  7. 【Java从入门到天黑|03】JavaSE入门之流程控制
  8. skywalking使用方法_skywalking 6.2配置相关和使用
  9. vue vuex 大型项目demo示例
  10. Angular网络请求的封装