如何在变量中保存多个参数并添加到url中?

时间:2019-06-25 07:39:35

标签: javascript axios

我有很多参数要保存在param变量中,然后将其添加到url中。

如何将参数filter% 5Binprogress% 5D = true保存在变量param中? expand-> expand: track

没有问题

在标签网络中返回-> "https://spotify?expand=track&filter%255Binprogress%255D=true"

应为-> "https://spotify?expand=track&filter%5Binprogress%5D=true"

%255D ---> should be %5D

const param = {
    expand: track,
    'filter%5Binprogress%5D': true  //problem here
}


axios({
    url: "https://spotify?expand=track&filter%5Binprogress%5D=true",
    method: "GET",
    headers: {
        'Authorization': .....
    },
    param: param
})

2 个答案:

答案 0 :(得分:0)

这是因为对象属性中有特殊字符。

尝试使用引号(单引号或双引号)

const param = {
    expand: track,
    "filter%5Binprogress%5D": true
}


axios({
    url: "https://spotify?expand=track&filter%5Binprogress%5D=true",
    method: "GET",
    headers: {
        'Authorization': .....
    },
    param: param
})


答案 1 :(得分:-2)

使用引号或括号表示。

const param = {
    expand: track
}

param['filter%5Binprogress%5D'] = true;

或使用引号:

const param = {
        expand: track,
        "filter%5Binprogress%5D": true 

    }