美文网首页
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