org.littleshoot.proxy.HttpFiltersAdapter类的使用及代码示例

x33g5p2x  于2022-01-20 转载在 其他  
字(8.0k)|赞(0)|评价(0)|浏览(69)

本文整理了Java中org.littleshoot.proxy.HttpFiltersAdapter类的一些代码示例,展示了HttpFiltersAdapter类的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。HttpFiltersAdapter类的具体详情如下:
包路径:org.littleshoot.proxy.HttpFiltersAdapter
类名称:HttpFiltersAdapter

HttpFiltersAdapter介绍

[英]Convenience base class for implementations of HttpFilters.
[中]HttpFilters实现的便利基类。

代码示例

代码示例来源:origin: JZ-Darkal/AndroidHttpCapture

@Override
  public HttpResponse clientToProxyRequest(HttpObject httpObject) {
    if (httpObject instanceof HttpRequest) {
      activityMonitor.requestStarted();
    }

    return super.clientToProxyRequest(httpObject);
  }
}

代码示例来源:origin: JZ-Darkal/AndroidHttpCapture

@Override
  public HttpObject proxyToClientResponse(HttpObject httpObject) {
    if (httpObject instanceof HttpResponse) {
      if (latencyMs > 0) {
        try {
          TimeUnit.MILLISECONDS.sleep(latencyMs);
        } catch (InterruptedException e) {
          Thread.currentThread().interrupt();

          log.warn("Interrupted while adding latency to response", e);
        }
      }
    }

    return super.proxyToClientResponse(httpObject);
  }
}

代码示例来源:origin: JZ-Darkal/AndroidHttpCapture

@Override
public void proxyToServerResolutionSucceeded(String serverHostAndPort, InetSocketAddress resolvedRemoteAddress) {
  for (HttpFilters filter : filters) {
    try {
      filter.proxyToServerResolutionSucceeded(serverHostAndPort, resolvedRemoteAddress);
    } catch (RuntimeException e) {
      log.warn("Filter in filter chain threw exception. Filter method may have been aborted.", e);
    }
  }
  super.proxyToServerResolutionSucceeded(serverHostAndPort, resolvedRemoteAddress);
}

代码示例来源:origin: JZ-Darkal/AndroidHttpCapture

@Override
public HttpObject serverToProxyResponse(HttpObject httpObject) {
  if (httpObject instanceof HttpResponse) {
    httpResponse = (HttpResponse) httpObject;
    captureContentEncoding(httpResponse);
  }
  if (httpObject instanceof HttpContent) {
    HttpContent httpContent = (HttpContent) httpObject;
    storeResponseContent(httpContent);
    if (httpContent instanceof LastHttpContent) {
      LastHttpContent lastContent = (LastHttpContent) httpContent;
      captureTrailingHeaders(lastContent);
      captureFullResponseContents();
    }
  }
  return super.serverToProxyResponse(httpObject);
}

代码示例来源:origin: com.github.mike10004/littleproxy

public HttpFilters filterRequest(HttpRequest originalRequest) {
  return new HttpFiltersAdapter(originalRequest, null);
}

代码示例来源:origin: chengdedeng/waf

@Override
  public void proxyToServerConnectionSucceeded(final ChannelHandlerContext serverCtx) {
    Map<String, ForwardConfig> forwardConfigMap = ContextHolder.getClusterService().getTranslateConfigs();
    //forward的时候牵涉到协议转换,所以必须要是FullHttpRequest,所以我们必须要使用aggregator
    if (!forwardConfigMap.containsKey(originalRequest.headers().getAsString(WafHttpHeaderNames.X_WAF_ROUTE))) {
      ChannelPipeline pipeline = serverCtx.pipeline();
      //当没有修改getMaximumResponseBufferSizeInBytes中buffer默认的大小时,下面两个handler是不存在的
      if (pipeline.get("inflater") != null) {
        pipeline.remove("inflater");
      }
      if (pipeline.get("aggregator") != null) {
        pipeline.remove("aggregator");
      }
    }
    super.proxyToServerConnectionSucceeded(serverCtx);
  }
}

代码示例来源:origin: misakuo/Dream-Catcher

@Override
public HttpObject serverToProxyResponse(HttpObject httpObject) {
  if (httpObject instanceof HttpResponse) {
    httpResponse = (HttpResponse) httpObject;
    captureContentEncoding(httpResponse);
  }
  if (httpObject instanceof HttpContent) {
    HttpContent httpContent = (HttpContent) httpObject;
    storeResponseContent(httpContent);
    if (httpContent instanceof LastHttpContent) {
      LastHttpContent lastContent = (LastHttpContent) httpContent;
      captureTrailingHeaders(lastContent);
      captureFullResponseContents();
    }
  }
  return super.serverToProxyResponse(httpObject);
}

代码示例来源:origin: net.lightbody.bmp/littleproxy

public HttpFilters filterRequest(HttpRequest originalRequest) {
  return new HttpFiltersAdapter(originalRequest, null);
}

代码示例来源:origin: JZ-Darkal/AndroidHttpCapture

@Override
  public HttpObject proxyToClientResponse(HttpObject httpObject) {
    if (httpObject instanceof LastHttpContent) {
      activityMonitor.requestFinished();
    }

    return super.proxyToClientResponse(httpObject);
  }
}

代码示例来源:origin: spinn3r/noxy

@Override
public HttpResponse clientToProxyRequest(HttpObject httpObject) {
  System.out.printf( "\n%s\n", httpObject );
  return super.clientToProxyRequest( httpObject );
}

代码示例来源:origin: net.lightbody.bmp/browsermob-core

@Override
public void proxyToServerResolutionSucceeded(String serverHostAndPort, InetSocketAddress resolvedRemoteAddress) {
  for (HttpFilters filter : filters) {
    try {
      filter.proxyToServerResolutionSucceeded(serverHostAndPort, resolvedRemoteAddress);
    } catch (RuntimeException e) {
      log.warn("Filter in filter chain threw exception. Filter method may have been aborted.", e);
    }
  }
  super.proxyToServerResolutionSucceeded(serverHostAndPort, resolvedRemoteAddress);
}

代码示例来源:origin: net.lightbody.bmp/browsermob-core

@Override
public HttpObject serverToProxyResponse(HttpObject httpObject) {
  if (httpObject instanceof HttpResponse) {
    httpResponse = (HttpResponse) httpObject;
    captureContentEncoding(httpResponse);
  }
  if (httpObject instanceof HttpContent) {
    HttpContent httpContent = (HttpContent) httpObject;
    storeResponseContent(httpContent);
    if (httpContent instanceof LastHttpContent) {
      LastHttpContent lastContent = (LastHttpContent) httpContent;
      captureTrailingHeaders(lastContent);
      captureFullResponseContents();
    }
  }
  return super.serverToProxyResponse(httpObject);
}

代码示例来源:origin: stackoverflow.com

HttpProxyServer server =
 DefaultHttpProxyServer.bootstrap()
   .withPort(8080)
   .withFiltersSource(new HttpFiltersSourceAdapter() {
     public HttpFilters filterRequest(HttpRequest originalRequest, ChannelHandlerContext ctx) {
       return new HttpFiltersAdapter(originalRequest) {
        @Override
        public HttpResponse clientToProxyRequest(HttpObject httpObject) {
          // Modify header, replace remote IP/Port
          return null;
        }
        @Override
        public HttpResponse proxyToServerRequest(HttpObject httpObject) {
          // TODO: implement your filtering here
          return null;
        }
        @Override
        public HttpObject serverToProxyResponse(HttpObject httpObject) {
          // TODO: implement your filtering here
          return httpObject;
        }
        @Override
        public HttpObject proxyToClientResponse(HttpObject httpObject) {
          // TODO: implement your filtering here
          return httpObject;
        }   
       };
     }
   })
   .start();

代码示例来源:origin: spinn3r/noxy

@Override
  public HttpObject proxyToClientResponse(HttpObject httpObject) {
    System.out.printf( "\n%s\n", httpObject );
    return super.proxyToClientResponse( httpObject );
  }
}

代码示例来源:origin: misakuo/Dream-Catcher

@Override
  public HttpResponse clientToProxyRequest(HttpObject httpObject) {
    if (httpObject instanceof HttpRequest) {
      activityMonitor.requestStarted();
    }

    return super.clientToProxyRequest(httpObject);
  }
}

代码示例来源:origin: misakuo/Dream-Catcher

@Override
public void proxyToServerResolutionSucceeded(String serverHostAndPort, InetSocketAddress resolvedRemoteAddress) {
  for (HttpFilters filter : filters) {
    try {
      filter.proxyToServerResolutionSucceeded(serverHostAndPort, resolvedRemoteAddress);
    } catch (RuntimeException e) {
      log.warn("Filter in filter chain threw exception. Filter method may have been aborted.", e);
    }
  }
  super.proxyToServerResolutionSucceeded(serverHostAndPort, resolvedRemoteAddress);
}

代码示例来源:origin: net.lightbody.bmp/browsermob-core-littleproxy

@Override
public HttpObject serverToProxyResponse(HttpObject httpObject) {
  if (httpObject instanceof HttpResponse) {
    this.httpResponse = (HttpResponse) httpObject;
  }
  if (httpObject instanceof HttpContent) {
    HttpContent httpContent = (HttpContent) httpObject;
    storeResponseContent(httpContent);
    if (httpContent instanceof LastHttpContent) {
      LastHttpContent lastContent = (LastHttpContent) httpContent;
      captureTrailingHeaders(lastContent);
      captureContentEncoding();
      captureFullResponseContents();
    }
  }
  return super.serverToProxyResponse(httpObject);
}

代码示例来源:origin: ganskef/LittleProxy-mitm

return new HttpFiltersAdapter(originalRequest);
return new HttpFiltersAdapter(originalRequest) {

代码示例来源:origin: net.lightbody.bmp/browsermob-core-littleproxy

@Override
  public HttpObject proxyToClientResponse(HttpObject httpObject) {
    if (httpObject instanceof HttpResponse) {
      if (latencyMs > 0) {
        try {
          TimeUnit.MILLISECONDS.sleep(latencyMs);
        } catch (InterruptedException e) {
          Thread.currentThread().interrupt();

          log.warn("Interrupted while adding latency to response", e);
        }
      }
    }

    return super.proxyToClientResponse(httpObject);
  }
}

代码示例来源:origin: net.lightbody.bmp/browsermob-core

@Override
  public HttpResponse clientToProxyRequest(HttpObject httpObject) {
    if (httpObject instanceof HttpRequest) {
      activityMonitor.requestStarted();
    }

    return super.clientToProxyRequest(httpObject);
  }
}

相关文章