vuejs2 - Axios 获取请求不接受 '[]' 作为参数值
问题描述
我们正在将现有的 jQuery Ajax 调用迁移到 Vue Axios。当我们添加任何具有 [] 字符的参数时,请求将无法调用后端服务,如果我们排除具有 [] 字符的参数,则它是成功的。
网络选项卡 中现有Ajax URL 的成功请求 URL: http://localhost:8080/app_Server/FetchData?userId=alex&queryListStr=%5B%5D
失败请求 url 哪个是网络选项卡 中的Axios URL: http://localhost:8080/app_Server/FetchData?userId=alex&queryListStr=[]
我可以看到 Ajax 编码 [] 字符,但在 Axios 中没有。
我正在尝试在我的 GET 请求中传递 URL 参数中的参数,如下所示
public async fetchRows(data:any){
try {
const url="http://localhost:8080/app_Server/FetchData";
const resp = await axios.get(url, {
params: {
userId : "alex",
querytr :"[]"
}
});
console.log(`this is the response: ${resp}`);
} catch (e) {
console.log(`Error! ${e.message}`);
};
}
参数queryStr有字符"[]"。如果我们在 jquery $.getJSON() API 中传递这些参数,则相同的参数将起作用。发出请求时参数编码是否有问题。Axios 是否忽略 [] 字符进行编码。
解决方案
推荐阅读
- php - 始终从数据库中获取实时数据的原则/清除正在破坏一切/棘轮聊天
- python-3.x - Pyqt5 中嵌入的 Matplotlib 导航工具栏
- shell - mvn:找不到命令 | 构建步骤“执行 shell”将构建标记为失败
- selenium - 如何从步骤定义文件返回将要执行的当前方法
- javascript - 在 chart.js 中使用条形上方的粘性数字
- asp.net-core - 自定义 ConfigurationDbContext 时更改 IdentityServer 上的架构
- tensorflow - 如何将词汇文本文件传递给模型并在谷歌云平台机器学习引擎上进行训练
- php - |Laravel 加密| 抓取数据库中的多个条目时抛出“有效负载无效”错误,但抓取一个条目时不会
- python - 动态更改回溯期
- c - 在内核自定义中访问 usr/src/linux 时遇到问题