axios中传递路径参数

新手上路,请多包涵

我正在将 Axios 与 NodeJs 一起使用,并尝试在 axios.get() 方法中传递路径参数。例如,如果 URL 是 url = '/fetch/{date}' ,我想在调用 axios.get(url) 时将 {date} 替换为实际日期。

我浏览了 Github 和 StackOverflow 上的源代码,但找不到任何方法。

是否可以在实际调用axios的get方法时保留带参数的url作为占位符并替换它们?

原文由 Saheb 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.2k
1 个回答

Axios 没有这个功能, 看起来团队不想添加它

感谢以前响应者的启发,对我来说,这似乎是最接近您(和我)正在寻找的解决方案:

1 - 在您想要存储所有 URL 及其参数的位置,将它们定义为使用模板字符串返回组合 URL 的函数:

 export var fetchDateUrl = (date) => `/fetch/${date}`;

如果您需要将值连接到 URL 中的任何类型特定格式,此函数是执行此操作的好地方。

2 - 在您想发出请求的地方,使用正确的参数调用该函数:

 import { fetchDateUrl } from 'my-urls';
axios.get(fetchDateUrl(someDateVariable))...;

另一种变体,如果您真的喜欢在调用站点命名参数的想法,您可以定义 URL 函数来解构这样的对象:

 var fetchDateUrl = ({date}) => `/fetch/${date}`;

然后你会像这样使用它:

 axios.get(fetchDateUrl({date: someDateVariable}));

原文由 Graham Lea 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题