我在Spray.io中定义了以下路由。真正奇怪的是,每当我调用类似/user/8dsdf974jj
之类的东西时,它实际上都会运行以下三条路线。幽默地,我注意到了,因为我同时收到了20封发送给我的验证邮件。
pathPrefix("user") {
pathPrefix(PathElement) { id =>
path("") {
get { // code here }
} ~
path("verify" / "request") {
get { // code here }
} ~
path("verify" / "confirm") {
get { // code here }
}
}
}
有人可以解释为什么路径不会终止路由树吗?谢谢你的帮助。
答案 0 :(得分:5)
简而言之,问题是您的代码在路由构建时运行,而不是在实际处理请求时。
本文档以较长的形式解释:http://spray.io/documentation/spray-routing/advanced-topics/understanding-dsl-structure/
如果你查看邮件列表,你会发现很多关于这个确切问题的线索,它可以帮助你进一步。
HTH