当前位置: 首页 > 知识库问答 >
问题:

具有平坦路径结构的泽西岛WebService?

养聪
2023-03-14

我目前正在编写一个应用程序与多泽西岛为基础的WebServices。一件似乎过于复杂的事情是我用来调用它们的路径。

例如,一个用户收到了其他人的包裹,并希望让其他人知道这件事。这都应该由一个基本endpointParcelEndpoint来处理。

@ApplicationPath("parcel4u")
public class RefApp extends Application {
    public Set<Class<?>> getClasses() {
        final Set<Class<?>> returnValue = new HashSet<Class<?>>();
        returnValue.add(ParcelEndpoint.class);
        return returnValue;
    }
}
@Path("rest")
public class ParcelEndpoint {
    @GET
    @Path("received")
    @Produces(MediaType.TEXT_PLAIN)
    public String received(@PathParam("userid") String forUser){
        return "received!";
    }

    @GET
    @Path("found")
    @Produces(MediaType.TEXT_PLAIN)
    public String found(@PathParam("userid") String forUser){
        return "found!";
    }
}

所以我可以调用/parcel4u/rest/received或/parcel4u/rest/found。有没有办法跳过“Rest”部分?

共有1个答案

惠泳
2023-03-14

我想,您可以用@path(“/”)注释类,然后用@path(“received”)@path(“found”)注释方法。

 类似资料:
  • 我目前使用的是球衣 我现在要做的是设置泽西,这样当查询参数进来时(比如缩进),我可以告诉Jackson以“更漂亮的格式,也就是缩进”序列化JSON。您可以通过使用SerializationConfig.Feature.INDENT_OUTPUT配置JSON映射器来轻松地告诉Jackson这样做。 问题是,我如何在每个请求的基础上获取一个queryparam并使用它来修改Jackson的输出?

  • 我正在做一项创建Jersey客户端的任务。我用的是球衣1.18。目标URL如下所示。 我需要在我的网络资源中添加一个路径参数来调用这个URL。我看到了一个添加查询参数的选项,但没有为路径参数添加选项。我的代码看起来像这样。 谁能帮我一下吗?

  • 问题内容: 我有一个Jersey REST API,并且正在使用来处理授权。我还在所有端点上使用,以便我的API可以处理数千个并发请求。 我的授权过滤器命中了一个远程服务,但是当运行过滤器时,Jersey尚未将当前线程添加到它的内部,因此我完全失去了异步的好处。 我可以告诉Jersey我希望这是异步的吗? 这是一个示例资源: 更新 刚刚收到泽西队球员的回音,从2.7开始,这是不可能的。只有资源方法

  • 我很难理解泽西岛的注入机制。JAX-RS规范(http://jsr311.java.net/nonav/releases/1.1/spec/spec3.html#x3-520005)指出,在应用程序子类、根资源类和提供程序中可以通过@Context进行注入。 我现在有一个在启动时实例化的类,并且有一个在每次请求时调用的方法。在方法内部,我需要访问当前的UriInfo对象。问题是,这个方法不是从我的

  • 我正在泽西岛2中编写一个RESTful网络服务。我想支持响应的 Gzip 编码。按照这个答案,我在我的类中启用了。 在我的资源类中,我返回一个对象。 现在,当我点击这个api时,我得到一个响应,但响应头不包含头,而是包含 header。 请求: 响应: 响应中没有 标头,也没有任何标头。 我在上使用。 我还遗漏了其他配置吗?我如何获得这两个头并得到gzip压缩的响应,而不是接收分块的响应? 编辑:

  • 问题内容: 我在Glassfish上有一个工作正常的JavaEE 6 Web应用程序,该应用程序已经具有JSF前端并具有其身份验证机制((使用基于CDI和注释的安全性),因此有一个登录屏幕,用户输入用户名密码,按登录按钮和Java EE身份验证过程开始。 现在,我想“还将”我的一些服务类公开为REST服务(我可能会使用Jersey),因此也可以从移动设备访问它。但是让我担心的是登录部分。 我将使用