本篇文章给大家分享的是有关什么是http和它的请求方式、传递数据类型是什么?,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

什么是HTTP?

http全称(HyperText Transfer Protocol)是一套计算机通过网络进行通信的规则。

http的请求方式:
1. GET,通过请求URI得到资源
2. POST,用于添加新的内容
3. PUT用于修改某个内容
4. DELETE,删除某个内容
5. PATCH,部分文档更改

get请求

一般数据都在URL传参,params:data

例:

Request URL:http://api.anjianba.cn/api/Training/Query

或者:

Request URL:http://api.anjianba.cn/api/Training/Query/23

{ name:"Myname", { types:[1,3], forms:[2,5] }}

如果传递比较复杂的数据时,Query String Parameters,后台不喜欢处理这种数据

正常的处理之后:

Request URL:http://api.anjianba.cn/api/Training/Query?planName=&startTime=&endTime=&types[]=1&types[]=3

需要这种形式的:

Request URL:http://api.anjianba.cn/api/Training/Query?planName=&startTime=&endTime=&types=1&types=3

在jQuery中是设置 traditional:true,即可转换为如上数据类型。
axios的config中设置:

get(url, data = {}, options = {}) {let config = {params: data,headers: {、、、},{'paramsSerializer': function(params) {return qs.stringify(params, {indices: false})// return qs.stringify(params, { arrayFormat: "repeat" })},...options}return new Promise((resolve, reject) => {axios.get(url, config).then(response => {resolve(response.data);}).catch((error) => {reject(error);})})}

post、put、delet请求

提交这种复杂类型数据:

{ name:"Myname", { types:[1,3], forms:[2,5] }}

一般的数据提交类型为json:

对应的数据声明类型: 'Content-Type':'application/json'

序列化:JSON.stringify(data) json字符串

还有就是 FormData 类型:

对应的数据声明类型: 'Content-Type':'application/x-www-form-urlencoded;charset=UTF-8'

序列化:qs.stringify(data) ids[]=27&ids[]=26 ==> ids%5B0%5D=27&ids%5B1%5D=2

以上就是什么是http和它的请求方式、传递数据类型是什么?,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注亿速云行业资讯频道。