Обновить

Комментарии 3

Может, лучше не выдумывать?

Axum

async fn create_employee(
    State(handler): State<Arc<CreateEmployeeHandler>>, // DI
    Json(cmd): Json<CreateEmployee>,                   // Десериализация
) {
    handler.handle(cmd).await;
}

Router::new()
    .route("/employees/.../create", post(create_employee))
    .with_state(handler_arc);

Я хотел, чтобы маршруты и методы не задавались вручную, а выводились из доменного слоя: описал команды и запросы в DDD-терминах — и конвенция сама даёт пути и HTTP-методы.
Возможно, в статье это не получилось донести — спасибо, что написали, буду иметь в виду.

маршруты из доменного слоя... ммм...

ну уж не из доменного - не барское это дело

сервис какой-то для динамического роутинга

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации