API路由规则

API的路由规则和leap mvc的路由规则不同,API的路由规则按照JAX-RS标准定义。

如:

@Path("/api1")
public class Api1Controller extends ApiController {
    @GET
    public ApiResponse path1(){
        return ApiResponse.ACCEPTED;
    }
    @POST
    public ApiResponse path2(){
        return ApiResponse.ACCEPTED;
    }
    @DELETE
    public ApiResponse path3(){
        return ApiResponse.ACCEPTED;
    }
    @PATCH
    public ApiResponse path4(){
        return ApiResponse.ACCEPTED;
    }
    @GET("/path5")
    public ApiResponse path5(){
        return ApiResponse.ACCEPTED;
    }
}

生成的路由表如下:

METHOD  PATH                     ACTION                                         DEFAULT VIEW
------  ----------------------   --------------------------------------------   ------------------------------
POST    /demo-api/api1           Api1Controller.path2                           /demo-api/api1
PATCH   /demo-api/api1           Api1Controller.path4                           /demo-api/api1
GET     /demo-api/api1           Api1Controller.path1                           /demo-api/api1
DELETE  /demo-api/api1           Api1Controller.path3                           /demo-api/api1
GET     /demo-api/api1/path5     Api1Controller.path5                           /demo-api/api1/path5

这里Controller注解的uri是相对于api的base-path的uri。并且Action的uri是相对于Controller的uri。

注意:按照JAX-RS的标准,我们必须在方法上使用注解指定http请求的方法,没有注解指定的方法不会被解析成Action

results matching ""

    No results matching ""