You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何解决Java ApiBuilder中含斜杠的ID路径参数API运行问题

解决Javalin ApiBuilder中路径参数含斜杠导致端点匹配失败的问题

在使用Javalin的ApiBuilder定义POST接口时,若加密生成的ID包含斜杠(/),使用{id}作为路径参数占位符会导致请求无法匹配端点——因为斜杠会被解析为URL路径的一部分,而非参数的组成部分。

问题复现代码

ApiBuilder.post("http://localhost:5008/api/update/{id}") {
    // 业务处理逻辑
}

示例ID值:
mxCSRO3qErTy7eO77HJeUvBiKXM/1i1cd3GdHuqdeSz/lyLU/N7cBCz3eZoIUyybhhmpAeJ1IABomr8Kv0IDKA==

解决方案

根据Javalin官方文档,只需将路径参数的占位符格式从{id}改为<id>即可。修改后的代码如下:

ApiBuilder.post("http://localhost:5008/api/update/<id>") {
    // 业务处理逻辑
}

<id>格式会让Javalin将该位置到URL末尾的所有内容(包括其中的斜杠)都作为id参数的完整值,从而正确匹配端点并获取到包含斜杠的ID。

内容的提问来源于stack exchange,提问作者patani20

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.13 23:53:11