国产探花免费观看_亚洲丰满少妇自慰呻吟_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;    });}

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

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 临邑县| 富锦市| 萝北县| 云龙县| 弋阳县| 芮城县| 三河市| 宁化县| 望城县| 桦川县| 江源县| 施甸县| 冷水江市| 祁阳县| 灵石县| 永川市| 涞水县| 丹寨县| 葵青区| 济南市| 长治县| 南澳县| 治县。| 井研县| 邵东县| 文登市| 肇东市| 电白县| 漳平市| 平南县| 霍州市| 普定县| 龙岩市| 万安县| 金昌市| 都江堰市| 名山县| 会同县| 西乡县| 长宁县| 晋中市|