分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 技术分享

http请求方式和传递数据类型

发布时间:2023-09-06 01:37责任编辑:苏小强关键词:http数据类型

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

  • GET,通过请求URI得到资源
  • POST,用于添加新的内容
  • PUT用于修改某个内容
  • DELETE,删除某个内容
  • PATCH,部分文档更改

get请求

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

eg: 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=26

最后感谢夏大师的一起讨论研究,为本文成稿做出重要贡献

http请求方式和传递数据类型

原文地址:https://www.cnblogs.com/bug-master/p/8312623.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved