企业管理系统定制开发前端ajax的application/x-www-form-urlencoded 参数提交

         企业管理系统定制开发在开发中常用的Content-Type有application/x-www-form-urlencoded和application/json,企业管理系统定制开发作为有必要了解一些前端开发知识,对于这俩种类型前端是如果构造参数的,有必要了解一下前端是如何构造参数的,因为在日常开发中,如果你不清楚的话,跟前端对接时经常你因为你定义某种接收参数类型,而前端传的另外一种类型导致联调时不必要的麻烦!

        1.application/是常见的web 表单提交方式,参数通常在请求body中以key=value&key=value将键值对的参数用&连接起来方式传递。

除了表单form提交外,使用ajax一般构造参数如下:

        1)创建建一个URLSearchParams对象,然后将append到这个对象中

  1. const params = new URLSearchParams();
  2. params.append('username', this.username);
  3. params.append('password', this.password)
  4. axios({
  5. method: 'post',
  6. url: 'users/login/',
  7. data: params,
  8. headers:{'Content-Type':"application/x-www-form-urlencoded"}
  9. }).then(res => {
  10. console.log(res.data);
  11. // 将用户token保存到session中
  12. // localStorage.setItem('token', 'res.data.data.body.token');
  13. // _this.$router.push({ path: '/' });
  14. }).catch(error => {
  15. alert('账号或密码错误');
  16. console.log(error);
  17. });

        2)qs.stringfy() 将对象序列化成URL的形式

  1. import qs from 'qs';
  2. const data = { name:'mx' , age:'25'}; // 我们传的是 js 对象
  3. const options = {
  4. method: 'POST',
  5. headers: { 'content-type': 'application/x-www-form-urlencoded' },
  6. data: qs.stringify(data), // 用 qs 将js对象转换为字符串 'name=mx&age=25'
  7. url: 'http://www.edward.com'
  8. }; axios(options);

        3)jquery通过ajax post提交好像json对象可以直接转换键值对以&连接方式,具体可以自行了解一下,因为目前前端主流开发vue\react。

        2.application/json类型,这种就更简单了,参数直接是我们常用的json格式,示例如下:

  1. let params= { name: 'mx', age: '25' }
  2. $.ajax({
  3. type: 'POST',
  4. contentType: 'application/json;charset=utf-8', // 发送的数据类型
  5. dataType: 'json', // 接收的数据类型
  6. url: 'http://www.baidu.com',
  7. data: params,
  8. success: function (res) {
  9. console.log(res.data)
  10. }
  11. }) 

        注:常用的json字符串互转方式:jquery方式:$.parseJSON(string)、主流浏览器方式:JSON.stringfy(formData)、JSON.parse(string)部分浏览器不支持需引入json.js文件、JavaScript支持方式:eval("(" + string + ")")

        3.针对这俩种方式,java后端如何接受方式,可参考如下俩篇文章。

 

o(* ̄︶ ̄*)o日积月累,每天进步一点点

网站建设定制开发 软件系统开发定制 定制软件开发 软件开发定制 定制app开发 app开发定制 app开发定制公司 电商商城定制开发 定制小程序开发 定制开发小程序 客户管理系统开发定制 定制网站 定制开发 crm开发定制 开发公司 小程序开发定制 定制软件 收款定制开发 企业网站定制开发 定制化开发 android系统定制开发 定制小程序开发费用 定制设计 专注app软件定制开发 软件开发定制定制 知名网站建设定制 软件定制开发供应商 应用系统定制开发 软件系统定制开发 企业管理系统定制开发 系统定制开发