首页 > 解决方案 > 向响应添加其他属性

问题描述

使用 addResponseModifier 是否可以在最终响应之前获取用户属性并将其添加到响应正文中? https://pub.dev/documentation/aqueduct/latest/aqueduct/Request/addResponseModifier.html

      .route("/auth/token")
        .linkFunction((req) async {
      req.addResponseModifier((resp) async {
        final q = Query<User>(context)
        ..where((o) => o.username).equalTo(req.body.as()['username'][0] as String);
         final u = await q.fetchOne();
        resp.body = {
          "role": u.role
        };
      });
      return req;
    })
   .link(() => AuthController(authServer));

标签: dartaqueduct

解决方案


事实证明,该方法req.addResponseModifier是 type vod,稍后执行我async获取用户的调用。因此,使用不同的端点。


推荐阅读