亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

關于使用vue提交數據問題

標簽:
Java Vue.js

最近在项目中用vue与后台对接时遇到一些问题发现利用vue自带的http方式传递后台参数时会出现一些问题。
在控制台的network 我们会发现本次发送参数使用的是payload,而并不是以前我们利用ajax等传后台参数时所用的from data形式,这就导致后台利用以前的方式是无法接收到参数的。此时我们需要将请求头进行更改,将Content-Type改为application/x-www-form-urlencoded;charset=UTF-8 这样就会变为form data 方式提交数据。在请求中

Vue.$http({
  url: '/user',
  method: 'post',
  data: {
    firstName: 'Fred',
    lastName: 'Flintstone'
  },
  headers: {
    'Content-Type': 'application/x-www-form-urlencoded'
  }
})

之后请求数据已成功转为from data ,若在运行时from data中参数形式为
{“name”:“zhangsan”,“age”:16} : 而不是常规的
name: zhangsan
age : 16 这种形式,需要在请求中更改参数格式利用transformRequest

Vue.$http({
  url: '/user',
  method: 'post',
  data: {
    firstName: 'Fred',
    lastName: 'Flintstone'
  },
  transformRequest: [function (data) {
    // Do whatever you want to transform the data
    let ret = ''
    for (let it in data) {
      ret += encodeURIComponent(it) + '=' + encodeURIComponent(data[it]) + '&'
    }
    return ret
  }],
  headers: {
    'Content-Type': 'application/x-www-form-urlencoded'
  }
})
點擊查看更多內容
TA 點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優質文章

正在加載中
JAVA開發工程師
手記
粉絲
10
獲贊與收藏
66

關注作者,訂閱最新文章

閱讀免費教程

  • 推薦
  • 評論
  • 收藏
  • 共同學習,寫下你的評論
感謝您的支持,我會繼續努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

舉報

0/150
提交
取消