国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

詳解解決使用axios發送json后臺接收不到的問題

2019-11-19 13:36:14
字體:
來源:轉載
供稿:網友

問題描述

按照axios官網例子發起請求傳遞json,后臺接受到的數據為空,一直卡在options階段。

嘗試的方法

開始以為是接口有問題,使用postman測試下,一切正常,百思不得其解,看了好多issue也解決不了,加了headers:{'content-type':'application/json'}也沒用。

官網上是說,傳json就按application/json進行處理,然而并沒有卵用;之后套了一層JSON.stringify(data)content-type又變成表單格式了==。

然后翻自己之前的代碼,發現寫法如出一轍,懷疑是版本號的問題,然而并不是==。。。。考慮到可能和服務端有關系。

原代碼如下:

import axios from 'axios';export default function request(url, params) {  return axios.post(`xxxxxx/${url}`, params)    .then((response) => {      console.log('response', response);      return response;    })    .catch((error) => {      console.log('error', error);      return error;    });}

最后想想還是用fetch吧(確實用了,發現還是有這個問題,現在深度懷疑是服務端將參數類型卡的太死了,還有polyfill的問題就放棄了,如果有知道的小伙伴請留言告訴我,謝謝),實在不行就ajax(還要封裝成promise,哭)。出于對axios的堅持,終于找到了解決方法。

解決方法

就是添加qs庫,將json序列化之后傳遞,詳見這個issue

代碼:

import axios from 'axios';import qs from 'qs';export default function request(url, params) {  return axios.post(`https://xxxxxxxx/${url}`, qs.stringify(params))    .then((response) => {      console.log('response', response);      return response;    })    .catch((error) => {      console.log('error', error);      return error;    });}

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 调兵山市| 开远市| 东乌珠穆沁旗| 象山县| 常熟市| 蕲春县| 南投市| 洛阳市| 山阳县| 沙河市| 三亚市| 蓝田县| 新河县| 沭阳县| 高邮市| 淮安市| 望江县| 百色市| 汝州市| 天峨县| 慈溪市| 阿合奇县| 莎车县| 全州县| 萨嘎县| 辰溪县| 榆社县| 沅江市| 澳门| 潮州市| 彝良县| 沛县| 崇左市| 石景山区| 眉山市| 全州县| 伊金霍洛旗| 长宁县| 大城县| 中超| 定结县|