如何在kottpd中正确定义REST资源

问题描述 投票:0回答:1

我正在使用kottpd在Kotlin的REST服务器上工作>

这里是我定义的资源/ URI的摘录:

get("/patients") {req, res -> PatientHandler.doGetAll(req, res)}
post("/patients") {req, res -> PatientHandler.doPost(req, res)}

get("/patients/.*") {req, res -> PatientHandler.doGetOne(req, res)}
post("/patients/.*") {req, res -> PatientHandler.doPatch(req, res)}

get("/patients/.*/cases") {req, res -> CaseHandler.doGetAll(req, res)}
post("/patients/.*/cases") {req, res -> CaseHandler.doPost(req, res)}

[/patients/patients/.*]到目前为止运行良好:例如POST: /patients将患者添加到列表中,GET: /patients/1检索ID为1的患者。

但是,当调用POST: /patients/1/cases向患者1添加病例时,将执行POST: /patients/.*附带的功能。

[我假设(!),.*是通配符,因此在有ID,更多路径或其他内容之间没有区别。

如何定义我的资源/ URI以区分这些情况?或者,如果我的假设不正确:我在做什么错?

我正在使用kottpd在Kotlin的REST服务器上工作这是我定义的资源/ URI的摘录:get(“ / Patients”){req,res-> PatientHandler.doGetAll(req,res)}} post(“ /患者”){req,...

rest kotlin url resources
1个回答
0
投票

解决方案是将.*替换为\d+

© www.soinside.com 2019 - 2024. All rights reserved.