0

以下 GET 由以下 uri 触发

/PathA/SomePathA

@Path("/PathA")
public class SubscriptionEntry 
{
  @Path("{PathA}") 
  public SomeType SomeMethod(@PathParam("parA") String userip) 
  {
            //This is called!!! with  /PathA/SomePathA 
           return new SomeResource(uriInfo,request,userip,httpreq);
  }
}

SomeResource 是这样的

public class SomeResource 
{
  @GET 
  public Type AnotherMethod
  {
        .....
        .....
  }

      @Path({"What is suppose to be here???? since this class has no name??}") 
      public MyType MyMethod()
      {.... 

      }


}

我的问题是我如何调整上面的类(路径中需要什么),以便 MyMethod 被 uris 触发

/PathA/SomePathA/Test

或者

/PathA/SomePathA/SomePathB/Test

我尝试做类似以下的事情,但它不起作用

@Path("/Test") 
      public MyType MyMethod() {} 

关于如何使这项工作或我缺少什么的任何建议?

4

1 回答 1

0

首先,从另一个资源调用一个资源是 RESTful 架构的错误方法。第二,你问的不可能。

相反,您应该确定资源之间的关系。示例:

  • 班级有很多学生。
  • 学生属于一个班级。

然后相应地形成您的 URL。喜欢

  • GET /class --> 获取所有类
  • GET /class/{id} --> 获取特定的类
  • GET /class/{id}/students --> 获取特定班级的学生
  • GET /student --> 获取所有学生
  • GET /student/{id} --> 获取一个特定的学生

这是关于 URL 设计的好文章

于 2012-04-12T06:34:01.397 回答