2016-12-12 7 views
1

Littleproxyでプレイしていて、レスポンスを簡単に変更できましたが、リクエストパラメータを変更する良い例はありません。LittleProxyリクエストパラメータを変更する例

ネット上では、ポストデータを変更して1つの例しか見つかりませんでした。しかし、それを機能させることはできません。

リクエストパラメータを取得して変更する方法の例がありますか。

私はこのている:

public HttpResponse proxyToServerRequest(HttpObject httpObject) { 

    if(httpObject instanceof FullHttpRequest){ 
     FullHttpRequest request = (FullHttpRequest) httpObject; 

     if(request.getMethod() == HttpMethod.POST 
       && request.getUri().contains("/post")){ 

      CompositeByteBuf contentBuf = (CompositeByteBuf) request.content();   

      String contentStr = contentBuf.toString(CharsetUtil.UTF_8); 

      System.out.println("Post content for " + request.getUri() + " : " + contentStr); 

      String newBody = contentStr.replace("e", "ei"); 

      ByteBuf bodyContent = Unpooled.copiedBuffer(newBody, CharsetUtil.UTF_8); 

      contentBuf.clear().writeBytes(bodyContent); 
      HttpHeaders.setContentLength(request, newBody.length()); 
     } 
    } 

    return null; 
} 

あなたは、他の良い例を知っていますか?

答えて

0

あなたは、例えば、次のように特定のヘッダを削除することができます。

@Override 
public HttpResponse proxyToServerRequest(HttpObject httpObject) 
{ 
    if (httpObject instanceof HttpMessage) 
    { 
     HttpHeaders headers = ((HttpMessage)httpObject).headers(); 
     headers.names().forEach(h -> headers.remove(headerName)); 
    } 

    return super.proxyToServerRequest(httpObject); 
} 
関連する問題