最近在使用axios進(jìn)行開(kāi)發(fā)時(shí),遇到了一個(gè)奇怪的問(wèn)題:無(wú)法POST JSON數(shù)據(jù)。具體表現(xiàn)為發(fā)送的數(shù)據(jù)在后端無(wú)法被正確解析,導(dǎo)致請(qǐng)求失敗。
經(jīng)過(guò)一番排查,終于發(fā)現(xiàn)了問(wèn)題所在:axios默認(rèn)的請(qǐng)求Content-Type為application/x-www-form-urlencoded,而我們需要發(fā)送JSON數(shù)據(jù),因此需要設(shè)置Content-Type為application/json。
解決方法如下:
axios.post(url, data, { headers: { 'Content-Type': 'application/json' } })
通過(guò)在請(qǐng)求的配置項(xiàng)中設(shè)置headers頭部,我們可以指定需要發(fā)送JSON數(shù)據(jù)。
總結(jié):在使用axios進(jìn)行開(kāi)發(fā)時(shí),需要注意請(qǐng)求數(shù)據(jù)的格式,確保設(shè)置正確的Content-Type,以免出現(xiàn)請(qǐng)求失敗的問(wèn)題。