(十四)QS(QueryString的简写)解析参数的使用
1:安装qs模块
npm install qs --save
2:卸载qs模块
npm uninstall qs --save
如果卸载不掉也可以在node_modules模块里面找到qs文件夹直接删除,效果是一样的,因为安装的模块都被安装到node_modules里面去了
然后在yarn install一下
3:在main.js引用qs模块,然后注册到全局变量里面
import Qs from 'qs'
app.config.globalProperties.Qs = Qs
4:然后就可以在其他地方引用了
(1)stringify可以将对象转换成&拼接的字符串
var obj= {
id:'111',
name:'222'
};
var s=this.Qs.stringify(obj)
alert(s)
(2)parse将&拼接的字符串解析成对象
var url = 'id=111&name=222';
var s1=this.Qs.parse(url);
alert(s1.id)
5:具体用法
(1)get的时候
前端代码:
比如在data()方法里面定义了一个
return {
adduser:{
username:"111",
password:"222",
phonenumber:"333"
}
};
get提交的时候直接路径后面以&的方式拼接(var api = "http://localhost:43597/api/Test/GetQsGet?username=111&password=222&phonenumber=333";)
var sobj=this.Qs.stringify(this.adduser)
var api = "http://localhost:43597/api/Test/GetQsGet?"+sobj;
如果不是&拼接就不需要
var api = "http://localhost:43597/api/Test/GetQsGet";
this.$Http.get(api,{params:this.adduser} )
后端代码:
[Route("/api/Test")]
[ApiController]
public class TestController : ControllerBase
{
[ApiController]
public class TestController : ControllerBase
{
[Route("GetQsGet")]
[HttpGet]
public string GetQsGet(string username, string password, string phonenumber)
{
return "1111";
}
}
(2)post的时候
前端代码:
var api = "http://localhost:43597/api/Test/GetQsPost1";
let ss={
username:"111",
password:"222",
phonenumber:"333"
};
// .post(api,{},{params:this.adduser})//后台只能属性接收,后台如果是对象接收,接收到的是null,例如GetQsPost(string username, string password,string phonenumber)
// .post(api,ss)//只能对象接收,后台如果是属性接收,接收到的是null,例如GetQsPost(Getss getss),getss是一个类
this.$Http.post(api,this.Qs.stringify({getss:ss,sort:"1",name:"2"}))//可以同时接收多种类型的对象,比如接收一个对象的同时还可以接收两个属性,如下
后端代码:
[Route("GetQsPost1")]
[HttpPost]
public string GetQsPost1([FromForm]Getss getss, [FromForm] string sort, [FromForm] string name)
{
Getss getss1 = getss;
return "1111";
}
public class Getss
{
public string username { get; set; }
public string password { get; set; }
public string phonenumber { get; set; }
}
分类:
vue-
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现