鍍金池/ 問答/HTML/ axios通過create創(chuàng)建的實例調(diào)用時傳入params第一個參數(shù)以&

axios通過create創(chuàng)建的實例調(diào)用時傳入params第一個參數(shù)以&開頭是什么原因?

axios版本:0.18.0和0.17.1


// 創(chuàng)建axios實例
var req = axios.create({
    baseURL: 'http://abc.com',
    timeout: 15000
})

// 調(diào)用實例
req({
    method: 'get',
    url: '/node/getList',
    params: {
        a: 'a'
     }
})

// 正常請求地址應(yīng)該為
// http://abc.com/?a=a

//  實際地址卻是
//http://abc.com/&a=a

而通過axios直接創(chuàng)建的實例并沒有此問題

// 這種方式?jīng)]有問題
import axios from 'axios'
axios({
    method: 'get',
    url: 'abc.com',
    params: {
        a: 'a'
    }
})

這是什么原因?

回答
編輯回答
凝雅
  1. ? 是分隔實際的 URL 和參數(shù);
  2. &是 URL 中指定的參數(shù)間的分隔符;
  3. 被解析為 &,應(yīng)該是默認了 a:'a'前面的為參數(shù)
2017年3月8日 04:44