在 Play 框架中使用 SIRD 时如何解释路径

How is path interpreted when using SIRD in Play framework

以下示例来自 Play 的文档

要将路由 DSL 与使用路由文件和控制器的常规 Play 项目结合使用,请扩展 SimpleRouter:

package api

import javax.inject.Inject

import play.api.mvc._
import play.api.routing.Router.Routes
import play.api.routing.SimpleRouter
import play.api.routing.sird._

class ApiRouter @Inject()(controller: ApiController)
  extends SimpleRouter
{
  override def routes: Routes = {
    case GET(p"/") => controller.index
  }
}

将以下行添加到 conf/routes:

->      /api                        api.ApiRouter

问题 - 在上面的示例中,由于 /api 已经映射到 ApiRouterGET(p"/") 是否解析为 somedomain.com/api/somedomain.com/

它将解析为 somedomain.com/api/,这是 SIRD 的主要思想 - 它允许您模块化路由器。