-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathMyServlet.java
More file actions
71 lines (59 loc) · 2.18 KB
/
MyServlet.java
File metadata and controls
71 lines (59 loc) · 2.18 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
package HttpServerClient;
import java.io.BufferedReader;
import java.io.IOException;
import java.util.Enumeration;
import java.util.HashMap;
import javax.servlet.ServletException;
import javax.servlet.http.*;
import com.google.gson.Gson;
public class MyServlet extends HttpServlet{
private static final long serialVersionUID =1L;
private Gson gson;
private String name;
private MyHttpClient myClient;
@Override
public void init() {
this.gson = new Gson();
this.name = (String) getServletContext().getAttribute("server.name");
this.myClient = new MyHttpClient();
}
protected void doGet(HttpServletRequest req, HttpServletResponse res )throws ServletException,IOException{
String url = req.getScheme()+"://"+req.getRemoteAddr()+":"+req.getLocalPort()+req.getRequestURI();
System.out.println(url);
HashMap<Object, Object> headers = new HashMap<Object, Object>();
Enumeration<String> headerNames =req.getHeaderNames();
while(headerNames.hasMoreElements()) {
String key = headerNames.nextElement();
headers.put(key, req.getHeader(key));
}
//redirect
// String redirectUrl="";
// myClient.sendRequest(redirectUrl, "GET", headers, null);
res.setStatus(200);
res.getWriter().write("Server: "+ this.name);
}
protected void doPost(HttpServletRequest req, HttpServletResponse res )throws ServletException,IOException{
res.setStatus(200);
String url = req.getScheme()+"://"+req.getRemoteAddr()+":"+req.getLocalPort()+req.getRequestURI();
System.out.println(url);
HashMap<Object, Object> headers = new HashMap<Object, Object>();
Enumeration<String> headerNames =req.getHeaderNames();
while(headerNames.hasMoreElements()) {
String key = headerNames.nextElement();
headers.put(key, req.getHeader(key));
}
//redirect
// String body ="";
// String redirectUrl="";
// myClient.sendRequest(redirectUrl, "POST", headers, body);
StringBuilder buffer = new StringBuilder();
BufferedReader reader = req.getReader();
String line;
while ((line = reader.readLine()) != null) {
buffer.append(line);
buffer.append(System.lineSeparator());
}
String body = buffer.toString();
res.getWriter().write("Server:"+body);
}
}