我有一个快速路由,我从前端发送一个头,在这个路由中,我使用axios发出GET请求。我用axios创建了一个拦截器,但我希望能够从激活的路由中读取req对象,以便将头添加到axios GET调用中。
// Example Interceptor
axios.interceptors.request.use(
config => {
// How to get req.headers from the route here?
return config;
},
error => {
return Promise.reject(error);
}
);
// Exemple GET route
router.get('/get', async (req, res, next) => {
try {
const { data } = await axios.get('https://kjhf.fsadjhfewq.....');
} catch (error) {
console.log(error)
}
res.status(200).json({});
});
字符串
有可能做到这一点吗?
2条答案
按热度按时间0ejtzxu11#
所以我认为这样做的方法是使用中间件来设置头,并传递Axios示例
字符串
然后在你的路线中使用它
型
希望这对你有帮助!
mkh04yzy2#
我会这么做
1.创建一个自定义的express中间件,将axios示例作为参数,并添加到axios header或config中:
字符串
1.然后创建你的axios示例并使用express中的中间件:
型
1.现在,您的axios请求或响应拦截器应该可以访问添加的值:
型
更多信息,请参阅express和axios docs。