当前位置: 首页 > news >正文

JavaWeb之请求

请求

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

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

请求行对应方法

// 获取请求行中的协议名和版本
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();

网络连接信息相关方法

// 客户端的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();

请求头信息

// 获取请求头
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
;

获取请求参数

// 读取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;

https://zhhll.icu/2021/javaweb/基础/2.请求/

本文由 mdnice 多平台发布

http://www.lryc.cn/news/300753.html

相关文章:

  • VsCode中常用的正则表达式操作
  • ubuntu22.04@laptop OpenCV Get Started: 007_color_spaces
  • mysql 查询性能优化关键点总结
  • React - 分页插件默认是英文怎么办
  • 揭开Markdown的秘籍:引用|代码块|超链接
  • 【C语言】Debian安装并编译内核源码
  • 使用 C++23 从零实现 RISC-V 模拟器(6):权限支持
  • 针对某终端安全自检钓鱼工具的分析
  • XSS数据接收平台
  • MySQL 基础知识(六)之数据查询(一)
  • C#使用哈希表对XML文件进行查询
  • vscode写MATLAB配置
  • 第13章 网络 Page734 “I/O对象”的链式传递 单独的火箭发射函数,没有用对的智能指针
  • Git 存储大文件
  • 使用 Mermaid 创建流程图,序列图,甘特图
  • 政安晨:在Jupyter中【示例演绎】Matplotlib的官方指南(二){Image tutorial}·{Python语言}
  • gem5学习(20):替换策略——Replacement Policies
  • 嵌入式Qt Qt中的字符串类
  • 函数高级(C++)
  • jmeter-10调试取样器
  • C#,二进制数的按位旋转(Bits Rotate)算法与源代码
  • 解决ubuntu登录密码问题
  • Ubuntu忘记登录密码重置步骤
  • MySQL数据库基础(五):SQL语言讲解
  • python-使用ffmpeg批量修改文件的后缀名
  • 关于jupyter的一些小笔记
  • macOS 安装 conda
  • C++并发编程 -3.同步并发操作
  • 【打工日常】使用docker部署可视化工具docker-ui
  • LGAMEFI基于BPL公链开发的第一生态:开启RWA游戏娱乐与DeFi融合的新纪元