javascript - 为什么很多项目在发送 post 请求前要对请求体中的数据序列化?
天蓬老师
天蓬老师 2017-06-15 09:23:20
0
2
916

发现很多项目中对 post 请求中要传输的数据用『querystring parsing and stringifying library』这种类型的库进行序列化,比如说 qs。

//POST传参序列化(添加请求拦截器)
axios.interceptors.request.use((config) => {
    //在发送请求之前做某件事
    if(config.method  === 'post'){
        config.data = qs.stringify(config.data);
    }
    return config;
},(error) =>{
     _.toast("错误的传参", 'fail');
    return Promise.reject(error);
});

其中在 qs 中的介绍中有句:『A querystring parsing and stringifying library with some added security.』。请问其中的安全体现在哪?

天蓬老师
天蓬老师

欢迎选择我的课程,让我们一起见证您的进步~~

全部回复(2)
伊谢尔伦

看看 qs 的测试用例你就知道了 https://github.com/ljharb/qs/...

这个 security 值得是你构造出来的数据是合法的。

曾经蜡笔没有小新

评论写错地方了 qs 这个库就主要就是为了检测数据是否合法吗?因为如果我以前用 jQuery、axios的时候就算不添加 qs 这个库,也照样可以发送 ajax 请求。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板