gpt4 book ai didi

java - playframe工作找不到正确的路线

转载 作者:行者123 更新时间:2023-11-30 06:53:55 26 4
gpt4 key购买 nike

我有一个奇怪的问题

这就是我在 routes 中的内容文件

GET     /path/list                          controllers.path.getPaths()
GET /path/:id controllers.path.get(id:Int)

当我尝试去 <domain>/path/list出现以下错误:

For request 'GET /path/list' [Cannot parse parameter id as Int: For input string: "list"]

我还尝试更改 routes 中的顺序文件

GET     /path/:id                           controllers.path.get(id:Int)
GET /path/list controllers.path.getPaths()

我仍然得到同样的错误。所以我的问题是

  1. 难道路由不应该匹配第一个匹配的路径吗?
  2. 还有什么问题(例如 java 代码)?

最佳答案

根据您提供的代码,这应该可行。路线没有歧义,因为(来自 Play 文档):

Many routes can match the same request. If there is a conflict, the first route (in declaration order) is used.

如果您的路线顺序如下所示:

GET     /path/list                          controllers.path.getPaths()
GET /path/:id controllers.path.get(id:Int)

/path/list 将在尝试从路径中提取/转换 id 参数 id:Int 并抛出之前匹配。

If you want Play to transform the incoming parameter into a specific Scala type, you can add an explicit type

如果您尝试访问与 list 不匹配或不是 Int 的路由,这将 起作用的唯一方法:

For request 'GET /path/lists' [Cannot parse parameter id as Int: For input string: "lists"]

关于java - playframe工作找不到正确的路线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36919316/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com