美文网首页
Koa2 使用 koa-static 增加文件资源权限的验证

Koa2 使用 koa-static 增加文件资源权限的验证

作者: 煮茶忘放糖 | 来源:发表于2021-12-03 14:19 被阅读0次

在使用 koa-static 中间件时,发现前台直接GET请求文件资源无法自定义headers(Element Plus Upload组件的限制),所以我将token参数放到URL之后,作为Query参数使用。

后端判断是否是请求文件资源,如果是的话就尝试获取Token,并重新赋值给headers中的authorization参数,具体代码如下:

// app.js中,放到JWT插件前
app.use(async (ctx, next) => {
  let isFileUrl = /^\/\d{14}\/.+\.+/.test(ctx.request.url);
  if (isFileUrl) {
    const { token } = ctx.request.query;
    ctx.headers.authorization = "Bearer " + token || "";
  }
  await next();
});

文件资源URL格式:https://xxx.com/xxx/xxxx.png?token=xxx

相关文章

网友评论

      本文标题:Koa2 使用 koa-static 增加文件资源权限的验证

      本文链接:https://www.haomeiwen.com/subject/thypxrtx.html