Day04-Java开发所需的前端技术
  2sVs8vrvjmTp 2023年11月15日 24 0

HTTP请求

  1. 请求行
  2. 请求头
  3. 请求体

Day04-Java开发所需的前端技术_json

JavaScript函数

一个字母占一个字节,一个汉字占三个字节

//获取长度
"字符串".length
//获得字符串的urIEncode编码(特殊字符需要编码)
encodeURIComponent("张三")
//编码结果
%E5%BC%A0%E4%B8%89

get请求示例

GET /test?name=zhang&age=18 HTTP/1.1
Host: localhost

post请求示例

Content-Type:请求体的格式

Content-Length:请求体的长度

POST /test HTTP/1.1
Host: localhost
Content-Type:application/x-www-form-urencoded
Content-Length: 17
  
name=zhang&age=18

json请求示例

POST /test2 HTTP/1.1
Host: localhost
Content-Type:application/json
Content-Length: 25

{"name":"zhang","age":18}

json数据格式

{"属性名":属性值}

  • 字符串 ""
  • 数字
  • 布尔值:true,false
  • null
  • 数组
[元素1,元素2,...]

multipart 请求示例

POST /test2 HTTP/1.1
Host: localhost
Content-Type: multipart/form-data; boundary=123
Content-Length: 125

--123
Content-Disposition: form-data; name="name"

lisi
--123
Content-Disposition: form-data; name="age"

30
--123--

计算长度

`POST /test2 HTTP/1.1
Host: localhost
Content-Type: multipart/form-data; boundary=123
Content-Length: 125

--123
Content-Disposition: form-data; name="name"

lisi
--123
Content-Disposition: form-data; name="age"

30
--123--`.Length

换行报错空行'\n'和回车键,使用.Length计算时没有计算回车键,需要自行添加

  • boundary=123 用来定义分隔符
  • 起始分隔符是 --分隔符
  • 结束分隔符是 --分隔符--

客户端发送

  • 编码
  • application/x-www-form-urlencoded : url 编码
  • application/json: utf-8 编码
  • multipart/form-data: 每部分编码可以不同
  • 表单只支持以application/x-www-form-urlencoded 和multipart/form-data 格式发送数据
  • 文件上传需要用 multipart/form-data 格式
  • js代码可以支持任意格式发送数据

服务端接收

  • 对application/x-www-form-urlencoded 和 multipart/form-data格式的数据,Spring 接收方式是统一的,只需要用java bean 的属性名对应请求参数名即可
  • 对于applicaiton/json 格式的数据,Spring 接收需要使用@RequestBody注解 +java bean 的方式


【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月15日 0

暂无评论

推荐阅读
2sVs8vrvjmTp