我一直在玩 Littleproxy,发现修改响应很容易,但找不到任何修改请求参数的好例子。
在网上我只找到了一个例子,修改帖子数据。但不能让它工作。
你有一个例子来解释我们如何获取请求参数并修改它们。
我有这个:
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;
}
你还知道其他什么好例子吗?