JavaWeb之请求

请求

客户端请求由ServletRequest类型的request对象表示,在HTTP请求场景下,容器提供的请求对象的具体类型为HttpServletRequest

HTTP的请求消息分为三部分:请求行、请求头、请求正文。

请求行对应方法

java 复制代码
// 获取请求行中的协议名和版本
public String getProtocol();

// 获取请求方式
public String getMethod();

// url中的额外路径信息
public String getPathInfo();

// url中的额外路径信息多对应的资源的真是路径
public String getPathTranslated();

// 获取请求URL所属的WEB应用程序路径,以/开头,表示整个web站点的根目录
public String getContextPath();

// 请求行中的参数
public String getQueryString();

// 获取请求行中的资源名,主机端口之后,参数之前的部分
public String getRequestURI();

// 获取Servlet所映射的路径
public String getServletPath();

网络连接信息相关方法

java 复制代码
// 客户端的ip
public String getRemoteAddr();
//客户端的主机
public String getRemoteHost();
//客户端的端口
public int getRemotePort();
// 服务器接收当前请求的网络接口的ip对应的主机名
public String getLocalName();
// 服务器接收当前请求的网络接口的ip
public String getLocalAddr();
// 服务器接收当前请求的网络接口的端口
public int getLocalPort();
// 获取URL
public StringBuffer getRequestURL();
// 当前请求所指向的主机名
public String getServerName();
// 当前请求所连接的服务器端口号
public int getServerPort();
// 协议名
public String getScheme();

请求头信息

java 复制代码
// 获取请求头
public long getDateHeader(String name);
public String getHeader(String name); 
public Enumeration<String> getHeaders(String name); 
public Enumeration<String> getHeaderNames();
public int getIntHeader(String name);
// 获取Content-Length头字段信息
public int getContentLength();
// 返回Content-Type头字段信息
public String getContentType();
// 返回请求消息的字符集编码,Content-Type头字段信息
public String getCharacterEncoding();


public String getAuthType();
    
public Cookie[] getCookies();

public String getRemoteUser();

public boolean isUserInRole(String role);

public java.security.Principal getUserPrincipal();

public String getRequestedSessionId();

public HttpSession getSession(boolean create);

public HttpSession getSession();

public String changeSessionId();

public boolean isRequestedSessionIdValid();

public boolean isRequestedSessionIdFromCookie();

public boolean isRequestedSessionIdFromURL();

public boolean isRequestedSessionIdFromUrl();

public boolean authenticate(HttpServletResponse response) 
  throws IOException,ServletException;

public void login(String username, String password) 
  throws ServletException;

public void logout() throws ServletException;

public Collection<Part> getParts() throws IOException, ServletException;

public Part getPart(String name) throws IOException, ServletException;

public <T extends HttpUpgradeHandler> T  upgrade(Class<T> handlerClass)
  throws IOException, ServletException;

获取请求参数

java 复制代码
// 读取url地址后的参数或者POST请求中application/x-www-form-urlencoded编码的实体
// 可以对编码内容自动完成参数的分解、提取以及解码
public String getParameter(String name);
public Enumeration<String> getParameterNames();
public String[] getParameterValues(String name);
public Map<String, String[]> getParameterMap();

// 获取流对象
public ServletInputStream getInputStream() throws IOException; 
public BufferedReader getReader() throws IOException;

zhhll.icu/2021/javawe...

本文由mdnice多平台发布

相关推荐
wang09072 小时前
自己动手写一个spring之IOC_2
java·后端·spring
来杯@Java3 小时前
学生选课管理系统(基于springboot+vue前后端分离的项目)计算机毕业设计java
java·spring boot·spring·vue·毕业设计·maven·mybatis
不知名的老吴4 小时前
线程的生命周期之线程“插队“
java·开发语言·python
ANnianStriver4 小时前
PetLumina-02-后端开发与前后端联调
java·ai·sa-token
杨了个杨89824 小时前
Keepalived + Nginx + HAProxy 高可用架构部署实战案例
java·nginx·架构
马士兵教育6 小时前
Java还有前景吗?Java+AI大模型学习路线及项目?
java·人工智能·python·学习·机器学习
snow@li7 小时前
Java:理解 Gradle / 后端项目的管家 / 打包SpringBoot 应用 / 完成编译、下载依赖、运行测试、打包 JAR/WAR / 速查表
java
云烟成雨TD7 小时前
Spring AI 1.x 系列【57】动态工具发现:Tool Search Tool
java·人工智能·spring
zfoo-framework7 小时前
[修改代码使用]codex官方app中使用中转(不需要cc-switch) 1.config.toml 2.sk方式登录
java