-- Learning not just technology, but dreams!
Home HTML JAVASCRIPT CSS VUE REACT PYTHON3 JAVA C C++ C# AI GO SQL LINUX VS CODE BOOTSTRAP GIT Local Bookmarks
JSP Tutorial
JSP Tutorial
JSP Introduction
JSP Development Environment Setup
Eclipse JSP/Servlet
JSP Structure
JSP Lifecycle
JSP Syntax
JSP Directives
JSP Action Elements
JSP Implicit Objects
JSP Client Requests
JSP Server Response
JSP HTTP Status Codes
JSP Form Processing
JSP Filters
JSP Cookie Handling
JSP Session
JSP File Upload
JSP Date Processing
JSP Page Redirection
JSP Hit Counter
JSP Auto Refresh
JSP Sending Emails
JSP Advanced Tutorial
JSP Standard Tag Library (JSTL)
JSP Database Connection
JSP XML Data Processing
JSP JavaBean
JSP Custom Tags
JSP Expression Language
JSP Exception Handling
JSP Debugging
JSP Internationalization
JSP Implicit Objects
JSP Server Response
JSP Client Requests
When a browser requests a webpage, it sends a series of information to the web server that cannot be read directly, because this information is transmitted as part of the HTTP message headers. You can refer to the HTTP protocol for more information.
The following table lists some important contents of the browser-side message headers, which will be frequently encountered in future network programming:
Header Description
Accept Specifies the MIME types that the browser or other clients can handle. Its value is usually image/png or image/jpeg
Accept-Charset Specifies the character set to be used by the browser. For example, ISO-8859-1
Accept-Encoding Specifies the encoding type. Its value is usually gzip or compress
Accept-Language Specifies the client's preferred language. The servlet will prioritize returning results composed in the current language if the servlet supports this language. For example, en, en-us, ru, etc.
Authorization Identifies different users when accessing password-protected webpages
Connection Indicates whether the client can handle HTTP persistent connections. Persistent connections allow the client or browser to obtain multiple files in a single request. Keep-Alive indicates that persistent connections are enabled
Content-Length Applies only to POST requests, indicating the number of bytes of POST data
Cookie Returns cookies previously sent to the browser back to the server
Host Indicates the hostname and port number in the original URL
If-Modified-Since Indicates that the client only needs the webpage if it has been modified after the specified date. The server sends a 304 code to the client, indicating that there are no updated resources
If-Unmodified-Since Opposite to If-Modified-Since, the operation is successful only if the document has not been modified after the specified date
Referer Indicates the URL of the referring page. For example, if you are on page 1 and then click a link to page 2, the URL of page 1 will be included in the browser's request header for page 2
User-Agent Used to distinguish requests sent by different browsers or clients and return different content for different types of browsers
HttpServletRequest Class
The request object is an instance of the javax.servlet.http.HttpServletRequest class. Whenever a client requests a page, the JSP engine creates a new object to represent this request.
The request object provides a series of methods to obtain HTTP headers, including form data, cookies, HTTP methods, etc.
The following will introduce some commonly used methods for obtaining HTTP headers in JSP programming. For details, please refer to the table below:
No. Method & Description
1 Cookie[] getCookies()
Returns an array of all Cookies from the client
2 Enumeration getAttributeNames()
Returns a collection of all attribute names of the request object
3 Enumeration getHeaderNames()
Returns a collection of all HTTP header names
4 Enumeration getParameterNames()
Returns a collection of all parameters in the request
5 HttpSession getSession()
Returns the session object corresponding to the request, creating one if it does not exist
6 HttpSession getSession(boolean create)
Returns the session object corresponding to the request, creating a new session object if it does not exist and the parameter create is true
7 Locale getLocale()
Returns the Locale object of the current page, which can be set in the response
8 Object getAttribute(String name)
Returns the attribute value named name, returning null if it does not exist.
9 ServletInputStream getInputStream()
Returns the input stream of the request
10 String getAuthType()
Returns the name of the authentication scheme used to protect the servlet, such as "BASIC" or "SSL", or null if the JSP has no protection measures set
11 String getCharacterEncoding()
Returns the name of the character encoding set of the request
12 String getContentType()
Returns the MIME type of the request body, returning null if unknown
13 String getContextPath()
Returns the context path specified in the request URI
14 String getHeader(String name)
Returns the header specified by name
15 String getMethod()
Returns the HTTP method in this request, such as GET, POST, or PUT
16 String getParameter(String name)
Returns the parameter specified by name in this request, returning null if it does not exist
17 String getPathInfo()
Returns any additional path information related to this request URL
18 String getProtocol()
Returns the protocol name and version used by this request
19 String getQueryString()
Returns the query string contained in this request URL
20 String getRemoteAddr()
Returns the IP address of the client
21 String getRemoteHost()
Returns the full name of the client
22 String getRemoteUser()
Returns the user who authenticated via login from the client, returning null if the user is not authenticated
23 String getRequestURI()
Returns the URI of the request
24 String getRequestedSessionId()
Returns the session ID specified by the request
25 String getServletPath()
Returns the path of the requested servlet
26 String[] getParameterValues(String name)
Returns all values of the parameter named name, returning null if it does not exist
27 boolean isSecure()
Returns whether the request uses an encrypted channel, such as HTTPS
28 int getContentLength()
Returns the number of bytes contained in the request body, returning -1 if unknown
29 int getIntHeader(String name)
Returns the value of the request header specified by name
30 int getServerPort()
Returns the server port number
HTTP Header Example
In this example, we will use the getHeaderNames() method of the HttpServletRequest class to read the HTTP headers. This method returns the header information of the current HTTP request in the form of an enumeration.
After obtaining the Enumeration object, use the standard way to traverse the Enumeration object, using the hasMoreElements() method to determine when to stop, and the nextElement() method to get the name of each parameter.
HTTP Header Request Example
| Header Name | Header Value(s) |
<%
Enumeration headerNames = request.getHeaderNames();
while(headerNames.hasMoreElements()) {
String paramName = (String)headerNames.nextElement();
out.print("| " + paramName + " | n");
String paramValue = request.getHeader(paramName);
out.println(" " + paramValue + " |
n");
}
%>
Accessing main.jsp will yield the following result:
You can try other methods of the HttpServletRequest class in the code above.
JSP Implicit Objects
JSP Server Response
ByteArk Coding Plan
Supports mainstream large models such as Doubao, GLM, DeepSeek, Kimi, MiniMax, officially supplied, stable and reliable.
Configuration Guide
¥9.9
/ Month
Activate Now
iFlytek Xingchen Coding Plan
Includes free model call quota, DeepSeek, GLM, Kimi, MiniMax, a one-stop experience and deployment platform.
Configuration Guide
¥3.9
/ Month
Activate Now
Click me to share notes
Category Navigation
Python / Data Science
AI / Intelligent Development
Front-end Development
Back-end Development
Database
Mobile Development
DevOps / Engineering
Programming Languages
Computer Fundamentals
XML / Web Service
.NET
Website Construction
Advertisement
Deep Dive
Programming Languages
Programming
Scripting Languages
Software
Network Services
Web Service
Scripts
Computer Science
JSP Tutorial
JSP Tutorial
JSP Introduction
JSP Development Environment Setup
Eclipse JSP/Servlet
JSP Structure
JSP Lifecycle
JSP Syntax
JSP Directives
JSP Action Elements
JSP Implicit Objects
JSP Client Requests
JSP Server Response
JSP HTTP Status Codes
JSP Form Processing
JSP Filters
JSP Cookie Handling
JSP Session
JSP File Upload
JSP Date Processing
JSP Page Redirection
JSP Hit Counter
JSP Auto Refresh
JSP Sending Emails
JSP Advanced Tutorial
JSP Standard Tag Library (JSTL)
JSP Database Connection
JSP XML Data Processing
JSP JavaBean
JSP Custom Tags
JSP Expression Language
JSP Exception Handling
JSP Debugging
JSP Internationalization
Online Examples
·HTML Examples
·CSS Examples
·JavaScript Examples
·Ajax Examples
·jQuery Examples
·XML Examples
·Java Examples
Character Sets & Tools
· HTML Character Set Settings
· HTML ASCII Character Set
· JS Obfuscation/Encryption
· PNG/JPEG Image Compression
· HTML Color Picker
· JSON Formatting Tool
· Random Number Generator
Latest Updates
· Large Model Multimodal (M...
· Codex Advanced Configuration
· AI Agent Terminology
· ZCode Getting Started Tutorial
· Loop Engineerin...
· Claude Code Us...
· Claude Code Us...
Site Information
· Feedback
· Disclaimer
· About Us
· Article Archive
Follow WeChat
My Favorites
Mark Article
Browsing History
Clear All
No records yet