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多平台发布

相关推荐
水无痕simon17 分钟前
1 银行业务之个人存款业务
java
long31619 分钟前
PostgreSQL 学习资料 · 入门 / 练习 / 精通 / 扩展
java·数据结构·数据库·spring boot·sql·postgresql·数据库开发
zzzll111127 分钟前
RAG(检索增强生成)技术详解:从原理到实践
java·人工智能
Seven9731 分钟前
用300行代码带你手写简化版RPC框架
java
Alex Gram1 小时前
双机热备软件哪个好
java·系统架构·c#·keepalived·高可用·双机热备·双机热备软件
纳兰青华1 小时前
拼图大师:从“暴力尝试“到“动态规划“的拆字艺术
java·算法·动态规划
蓝斯49710 小时前
[原创]《C#高级GDI+实战:从零开发一个流程图》第章:增加贝塞尔曲线,上、下、左、右连接点
java·c#·流程图
前端工作日常10 小时前
我学习到的Java 的 Service 分层:itf 和 impl 到底是什么?
java·后端
都叫我大帅哥11 小时前
Spring @Transactional 注解完全指南
java·spring
Java成神之路-11 小时前
G1 垃圾回收器 :SATB + TAMS核心机制深度解析
java·jvm