我似乎无法让多个参数工作如果我添加一个参数一切都很好,只要我添加第二个参数我总是得到一个
No data received
Unable to load the webpage because the server sent no data.
Here are some suggestions:
Reload this webpage later.
Error 324 (net::ERR_EMPTY_RESPONSE): The server closed the connection without sending any data.
其他人可以确认您可以使用play 2.0.2为请求添加第二个参数吗? (使用java)
我的网址就像这个一样简单
http://localhost:9000/account/foruser?username=somethig&create=0
和路线
GET /account/foruser
controllers.user.UserController.foruser(username:String, create:Boolean )
答案 0 :(得分:13)
你应该更多关注路线docs and samples
通常,如果您使用带有&name=value
的命名参数,则无需在路径文件中指定它们。而是在Java中使用DynamicForm来访问它们。
路径文件用于匹配链接的unnamed
部分和控制器的动作和参数。所以你的链接应该是这样的:
http://localhost:9000/account/foruser/something/0
和路线(当然这需要放在路线档中的一行:
GET /account/foruser/:username/:create
controllers.user.UserController.foruser(username: String, create: Integer )
请注意,有一些错误报告在路由中使用布尔类型,因此使用某些数字类型更安全。
答案 1 :(得分:0)
@biesior我使用2.0.4和两种类型的参数
会遇到同样的问题档案路线:
GET /v2/object/all/data/:from/:until/:all controllers.ObjectController.getAllData(from: String, until: String , all: Boolean, username: String ?= null, password: String ?=null)
文件控制器:
public static Result getAllData(
@PathParam("from") String from,
@PathParam("until") String until,
@PathParam("all") Boolean all,
@QueryParam("username") String username, @QueryParam("password") String password)
经过多次测试后我终于解决了这个问题。您应该使用“boolean”而不是Boolean,因此“getAllData”转换为:
public static Result getAllData(
@PathParam("from") String from,
@PathParam("until") String until,
@PathParam("all") boolean all,
@QueryParam("username") String username, @QueryParam("password") String password)
答案 2 :(得分:0)
一个简单的例子:
与此路线对应的正确网址:
GET /user/update:action/:id controllers.myFunction(action: String, id: String)
是网址:
myWebsite.com/user/update$action=update/$id=a@a.fr
请注意: