Акведук контроллер подстанции

Есть ли какая-либо возможность для направления в контроллере Акведук?

router.route("/userApi").link(() => UserController(context));

class UserController extends ResourceController {

@Operation.post("/login")
Future<Response> login(@Bind.body() IdWrap note) async {...}

@Operation.post("/byInnerToken")
Future<Response> login(@Bind.body() IdWrap note) async {...}

post("userApi/login", {"id": "aaa"})
post("userApi/byInnerToken", {"innerToken": "bbb"})

1 ответ

Решение

Как правило, да, используя переменные пути.

router.route("/userApi/:type").link(() => UserController(context));

class UserController extends ResourceController {
  @Operation.post('type')
  Future<Response> login(@Bind.path('type') String type, @Bind.body() IdWrap note) async {
    switch (type) {
      case "login": return login(note);
      case "byInnerToken": return withToken(note);
      default: return Response.notFound();
    }
  }
}

Нет возможности сопоставить шаблон с содержимым переменной пути.

Другие вопросы по тегам