如何防止Axios对我的请求参数进行编码?

我正在尝试通过GET请求中的URL参数传递API密钥。

但是,我注意到在发送请求时,Axios会在我的API密钥中对字符进行编码。这会导致API拒绝我的请求,因为它无法识别我的密钥。

如何防止Axios对我的GET参数进行编码?

回答:

您可以使用自定义参数序列化器,如下所示:

axios.get('https://foobar.com/api', {

paramsSerializer: function(params) {

var result = '';

// Build the query string

return result;

}

});

paramsSerializer 可以在实例级别设置:

var instance = axios.create({ paramsSerializer: function(params) { /* ... */ } })

或在全球范围内:

axios.defaults.paramsSerializer = function(params) { /* ... */ };

另一个选择是将api键直接添加到URL:

axios.get('https://foobar.com/api?api_key=' + key);

您可以使用`params’配置选项添加其他参数:

axios.get('https://foobar.com/api?api_key=' + key, {

params: {

foo: 'bar'

}

});

以上是 如何防止Axios对我的请求参数进行编码? 的全部内容, 来源链接: utcz.com/qa/428185.html

回到顶部