Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
2
20240528-BJava
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Patryk Czarnik
20240528-BJava
Commits
37de7153
Commit
37de7153
authored
Jun 12, 2024
by
Patryk Czarnik
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Ping
parent
2606664f
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
61 additions
and
5 deletions
+61
-5
Ping.java
PC23-Serwlety/src/main/java/serwlety/hello/Ping.java
+61
-5
No files found.
PC23-Serwlety/src/main/java/serwlety/hello/Ping.java
View file @
37de7153
...
@@ -3,9 +3,14 @@ package serwlety.hello;
...
@@ -3,9 +3,14 @@ package serwlety.hello;
import
java.io.IOException
;
import
java.io.IOException
;
import
java.io.PrintWriter
;
import
java.io.PrintWriter
;
import
java.time.LocalDateTime
;
import
java.time.LocalDateTime
;
import
java.time.LocalTime
;
import
java.util.Arrays
;
import
java.util.Enumeration
;
import
java.util.Map
;
import
jakarta.servlet.ServletException
;
import
jakarta.servlet.ServletException
;
import
jakarta.servlet.annotation.WebServlet
;
import
jakarta.servlet.annotation.WebServlet
;
import
jakarta.servlet.http.Cookie
;
import
jakarta.servlet.http.HttpServlet
;
import
jakarta.servlet.http.HttpServlet
;
import
jakarta.servlet.http.HttpServletRequest
;
import
jakarta.servlet.http.HttpServletRequest
;
import
jakarta.servlet.http.HttpServletResponse
;
import
jakarta.servlet.http.HttpServletResponse
;
...
@@ -35,18 +40,69 @@ public class Ping extends HttpServlet {
...
@@ -35,18 +40,69 @@ public class Ping extends HttpServlet {
* serwer wywołuje metodę doGet i w obiekcie request przekazuje nam informację o zapytaniu (adres, parametry, w przypadku metody POST także treść),
* serwer wywołuje metodę doGet i w obiekcie request przekazuje nam informację o zapytaniu (adres, parametry, w przypadku metody POST także treść),
* natomiast obiekt response dostajemy po to, aby za jego pomocą wygenerować odpowiedź.
* natomiast obiekt response dostajemy po to, aby za jego pomocą wygenerować odpowiedź.
*/
*/
String
dt
=
LocalTime
.
now
().
toString
();
String
addr
=
request
.
getRemoteAddr
();
String
addr
=
request
.
getRemoteAddr
();
int
port
=
request
.
getRemotePort
();
int
port
=
request
.
getRemotePort
();
String
userAgent
=
request
.
getHeader
(
"User-Agent"
);
String
userAgent
=
request
.
getHeader
(
"User-Agent"
);
LocalDateTime
dt
=
LocalDateTime
.
now
();
System
.
out
.
println
(
dt
+
": zapytanie z adresu "
+
addr
+
":"
+
port
+
"\nz przeglądarki "
+
userAgent
);
System
.
out
.
println
(
dt
+
": zapytanie z adresu "
+
addr
+
":"
+
port
+
"\nz przeglądarki "
+
userAgent
);
response
.
setContentType
(
"text/plain"
);
response
.
setContentType
(
"text/plain"
);
response
.
setCharacterEncoding
(
"UTF-8"
);
response
.
setCharacterEncoding
(
"UTF-8"
);
response
.
addCookie
(
new
Cookie
(
"czas"
,
dt
));
PrintWriter
out
=
response
.
getWriter
();
PrintWriter
out
=
response
.
getWriter
();
out
.
println
(
dt
+
": piszesz z adresu "
+
addr
+
":"
+
port
);
out
.
println
(
"Halo halo"
);
out
.
println
(
userAgent
);
out
.
println
(
"ContextPath: "
+
request
.
getContextPath
());
out
.
println
(
"RequestURI: "
+
request
.
getRequestURI
());
out
.
println
(
"QueryString: "
+
request
.
getQueryString
());
out
.
println
();
out
.
println
(
"LocalName: "
+
request
.
getLocalName
());
out
.
println
(
"LocalAddr: "
+
request
.
getLocalAddr
());
out
.
println
(
"LocalPort: "
+
request
.
getLocalPort
());
out
.
println
();
out
.
println
(
"RemoteHost: "
+
request
.
getRemoteHost
());
out
.
println
(
"RemoteAddr: "
+
request
.
getRemoteAddr
());
// itd.
out
.
println
();
out
.
println
(
"parametr x: "
+
request
.
getParameter
(
"x"
));
out
.
println
(
"parametr y: "
+
request
.
getParameter
(
"y"
));
String
[]
wartosciX
=
request
.
getParameterValues
(
"x"
);
out
.
println
(
"x jako tablica: "
+
Arrays
.
toString
(
wartosciX
));
out
.
println
(
"Wszystkie parametry:"
);
for
(
Map
.
Entry
<
String
,
String
[]>
e
:
request
.
getParameterMap
().
entrySet
())
{
String
[]
v
=
e
.
getValue
();
out
.
println
(
" * "
+
e
.
getKey
()
+
" : "
+
Arrays
.
toString
(
v
));
}
out
.
println
();
out
.
println
(
"nagłówek Accept: "
+
request
.
getHeader
(
"Accept"
));
out
.
println
(
"nagłówek User-Agent: "
+
userAgent
);
out
.
println
(
"Wszystkie nagłówki:"
);
Enumeration
<
String
>
headerNames
=
request
.
getHeaderNames
();
while
(
headerNames
.
hasMoreElements
())
{
String
nm
=
headerNames
.
nextElement
();
out
.
println
(
nm
+
": "
+
request
.
getHeader
(
nm
));
}
out
.
println
();
out
.
println
(
"Wszystkie ciastka:"
);
String
poprzedniCzas
=
null
;
Cookie
[]
cookies
=
request
.
getCookies
();
if
(
cookies
!=
null
)
for
(
Cookie
cooky
:
cookies
)
{
out
.
println
(
"cookie "
+
cooky
.
getName
()
+
" "
+
cooky
.
getValue
());
if
(
"czas"
.
equals
(
cooky
.
getName
()))
{
poprzedniCzas
=
cooky
.
getValue
();
}
}
out
.
println
(
"czas teraz : "
+
dt
);
out
.
println
(
"czas poprzedni: "
+
poprzedniCzas
);
}
}
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment