在使用vue.js聯(lián)調(diào)接口時(shí)酬土,有一個(gè)接口是form表單格式戏自,字段是數(shù)組格式灌旧,傳給后臺(tái)數(shù)據(jù)如下:
錯(cuò)誤數(shù)據(jù).png
后臺(tái)一直報(bào)500帝际,發(fā)現(xiàn)是格式傳輸錯(cuò)誤蟋软,正常傳給后臺(tái)數(shù)據(jù)如下:
正確數(shù)據(jù).png
發(fā)現(xiàn)區(qū)別是出現(xiàn)了數(shù)組下標(biāo)分飞,問(wèn)題定位到這寞冯,查詢資料可知添加{arrayFormat: 'brackets'}就可以解決:
//非完成代碼体斩,只有添加{arrayFormat: 'brackets'}此處代碼
service.interceptors.request.use(
config => {
//在data當(dāng)中存在數(shù)組的話需要加上{arrayFormat: 'brackets'} 否則提交時(shí)數(shù)組 會(huì)顯示下標(biāo)
config.data = qs.stringify(config.data, {arrayFormat: 'brackets'})
return config
}
)
最后加入{arrayFormat: 'brackets'}就解決問(wèn)題了遵堵。