今天在調用 手機驗證碼驗證的時候,老是出錯;
仔細對比了一下我發送的數據,請求方式,通過body傳遞的參數,但是本地測試卻一直報錯,但是在postman測試卻一切正常
???黑人問號
後來請教了同事才知道問題出在哪裏,是數據格式的問題
我發送的是 JSON 數據
但是,後臺接收的是 表單數據
so,一直失敗;
區分
好了,接下來說一下怎麼區分是 JSON數據 還是 表單數據
1. 接口上的不同 [postman]
JSON
表單數據
2. 瀏覽器上審查的時候的區別
JSON
表單數據
不同的傳參方式
JSON
// 根據商戶OpenId 修改賬戶信息
export function editAccount(openId, phone, data) {
return request({
url: `/mp/mp/finance/request/mp/` + openId, // 路徑參數
method: 'patch',
params: phone, // 查詢參數
data: data // body 數據
})
}
表單數據
// 1. 添加上 headers
headers: { 'Content-type': 'application/x-www-form-urlencoded' },
// 2. qs轉換一下
data: qs.stringify( data )
// 驗證手機驗證碼
export function verifyCode(data) {
return requestToazhi({
url: `/_Source/PhoneMsgHandler.ashx`,
method: 'post',
headers: { 'Content-type': 'application/x-www-form-urlencoded' },
withCredentials: true,
data: qs.stringify({ op: 'CheckPhoneCodeMsg', ...data })
})
}