Skip to content

Commit 1f0224e

Browse files
author
bl03615
committed
3.(必做)实现过滤器。
1 parent c60c140 commit 1f0224e

File tree

3 files changed

+21
-8
lines changed

3 files changed

+21
-8
lines changed
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
package io.github.kimmking.gateway.filter;
2+
3+
import io.netty.channel.ChannelHandlerContext;
4+
import io.netty.handler.codec.http.FullHttpRequest;
5+
6+
/**
7+
* 自己实现的filter
8+
*/
9+
public class MyHttpRequestFilter implements HttpRequestFilter {
10+
11+
@Override
12+
public void filter(FullHttpRequest fullRequest, ChannelHandlerContext ctx) {
13+
System.out.println("header content set in the filter");
14+
fullRequest.headers().set("xjava","Paulguard");
15+
}
16+
}

02nio/nio02/src/main/java/io/github/kimmking/gateway/inbound/HttpInboundHandler.java

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,19 @@
11
package io.github.kimmking.gateway.inbound;
22

3-
import io.github.kimmking.gateway.filter.HeaderHttpRequestFilter;
4-
import io.github.kimmking.gateway.filter.HttpRequestFilter;
3+
import io.github.kimmking.gateway.filter.MyHttpRequestFilter;
54
import io.github.kimmking.gateway.outbound.httpclient4.HttpOutboundHandler;
65
import io.netty.channel.ChannelHandlerContext;
76
import io.netty.channel.ChannelInboundHandlerAdapter;
87
import io.netty.handler.codec.http.FullHttpRequest;
98
import io.netty.util.ReferenceCountUtil;
10-
import org.slf4j.Logger;
11-
import org.slf4j.LoggerFactory;
129

1310
import java.util.List;
1411

1512
public class HttpInboundHandler extends ChannelInboundHandlerAdapter {
1613

17-
private static Logger logger = LoggerFactory.getLogger(HttpInboundHandler.class);
1814
private final List<String> proxyServer;
1915
private HttpOutboundHandler handler;
20-
private HttpRequestFilter filter = new HeaderHttpRequestFilter();
16+
private MyHttpRequestFilter filter = new MyHttpRequestFilter();
2117

2218
public HttpInboundHandler(List<String> proxyServer) {
2319
this.proxyServer = proxyServer;

02nio/nio02/src/main/java/io/github/kimmking/gateway/outbound/httpclient4/HttpOutboundHandler.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,7 @@
2323
import org.apache.http.util.EntityUtils;
2424

2525
import java.util.List;
26-
import java.util.Random;
2726
import java.util.concurrent.*;
28-
import java.util.logging.Filter;
2927
import java.util.stream.Collectors;
3028

3129
import static io.netty.handler.codec.http.HttpResponseStatus.NO_CONTENT;
@@ -84,6 +82,9 @@ private void fetchGet(final FullHttpRequest inbound, final ChannelHandlerContext
8482
//httpGet.setHeader(HTTP.CONN_DIRECTIVE, HTTP.CONN_CLOSE);
8583
httpGet.setHeader(HTTP.CONN_DIRECTIVE, HTTP.CONN_KEEP_ALIVE);
8684
httpGet.setHeader("mao", inbound.headers().get("mao"));
85+
httpGet.setHeader("javaParam",inbound.headers().get("xjava"));
86+
87+
System.out.println("xjava:" + inbound.headers().get("xjava"));
8788

8889
httpclient.execute(httpGet, new FutureCallback<HttpResponse>() {
8990
@Override

0 commit comments

Comments
 (0)