溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

解決Vue axios post請求,后臺(tái)獲取不到數(shù)據(jù)的問題方法

發(fā)布時(shí)間:2020-10-05 09:57:02 來源:腳本之家 閱讀:472 作者:aide521521 欄目:web開發(fā)

最近做項(xiàng)目,需要用到vue,后臺(tái)是php,第一次使用axios進(jìn)行請求,本以為同ajax一樣,會(huì)很簡單,但是結(jié)果往往不讓人滿意啊,get請求很簡單,這里就不說了,主要說下 post請求方式。

使用axios進(jìn)行post請求,后臺(tái)居然接收不到數(shù)據(jù),這就納悶了,于是網(wǎng)上一頓搜索,現(xiàn)在將所用的解決辦法給大家說下:

1.new URLSearchParams方式

起初使用params.append("屬性名":屬性值)的方式,對于簡單的數(shù)據(jù)傳遞這樣是沒有問題的,后臺(tái)可以正常接收數(shù)據(jù),但我發(fā)現(xiàn)一個(gè)問題,不知道大家有沒有遇到過,當(dāng)傳遞數(shù)據(jù)里含有數(shù)組時(shí),你會(huì)發(fā)現(xiàn)傳到后臺(tái)的是字符串的形式 arr:a1,b1,c1 而非正常格式 arr:[a1,b1,c1]不符合我的要求,繼續(xù)查找。

2.Qs.stringify方式

看到網(wǎng)上好多解決辦法都在說qs,于是裝了qs插件,使用方法也很簡單。首先安裝插件,然后注冊組件,axios.post(url,Qs.stringify(params)),在傳遞參數(shù)前,用qs轉(zhuǎn)換下格式就可以了,Qs是將對象 序列化成URL的形式,以&進(jìn)行拼接,在后臺(tái)輸出下接收的數(shù)據(jù),嘿有值了,別提有多高興了,剛樂呵沒二分鐘,等會(huì)再認(rèn)真看看,這才發(fā)現(xiàn)當(dāng)數(shù)據(jù)為空時(shí)qs居然給過濾掉了,直接沒傳,這叫一個(gè)傷心。。。

3.改變后臺(tái)接收方式

網(wǎng)上的帖子大部分都是在前端處理,但沒什么太好的解決辦法,于是把思路轉(zhuǎn)到后臺(tái),改變后臺(tái)的接收方式,最終使用file_get_contents('php://input')解決。

以上這篇解決Vue axios post請求,后臺(tái)獲取不到數(shù)據(jù)的問題方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持億速云。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI