有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

Java Jersey中的apache地理定位

我想知道是否有可能为每个匹配的HTTP请求调用一个方法

我的情况是: 我需要在http头中发送地理位置数据,我发送请求,它匹配定义的操作,同时更新我的地理位置

我可以很容易地为每个类中的每个方法复制一个方法调用,但我宁愿找到一个更合适的方法来解决这个问题

谢谢你的阅读


共 (1) 个答案

  1. # 1 楼答案

    你要找的是一个新泽西响应过滤器。下面是一个非常简单的示例,为每个传出请求添加一个静态头:

    package my.package;
    
    import com.sun.jersey.spi.container.ContainerRequest;
    import com.sun.jersey.spi.container.ContainerResponse;
    import com.sun.jersey.spi.container.ContainerResponseFilter;
    
    public class SimpleFilter implements ContainerResponseFilter
    {
      private static final String HEADER = "MyHeader";
    
      public SimpleFilter()
      {
      }
    
      @Override
      public ContainerResponse filter(final ContainerRequest request, final ContainerResponse response)
      {
        response.getHttpHeaders().add(HEADER, "MyValue");
        return response;
      }
    }
    

    您可以通过requestresponse参数访问filter方法的各种信息

    你需要通过网络添加过滤器。激活它的xml文件:

    <init-param>
      <param-name>com.sun.jersey.spi.container.ContainerResponseFilters</param-name>
      <param-value>my.package.SimpleFilter</param-value>
    </init-param>