Http 哀求协议

[复制链接]
发表于 2025-12-20 07:22:06 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
        HTTP的哀求协议
        哀求数据格式:

        哀求行

        哀求数据的第一行,包罗哀求方式、资源路径、协议及版本。
        哀求头

        从哀求数据的第二行,以key: value的格式
        常见的哀求头

        Host:哀求的主机名,如:localhost:8080(Tomcat服务器的默认端标语)
         User-Agent:发起哀求的欣赏器版本;比方:Chrome的欣赏器标识Mozilla/5.0...Chrome/79 ;IE的欣赏器的标识符雷同Mozilla/5.0(Windows NT ...) like Gecko
         Accept:表现欣赏器可以或许吸取的数据范例,如:Application/json(json),text/*(文本),image/*(图片),* /*表现全部范例
         Accept-Language:表现欣赏器偏好的语言,服务器可以据此返回差别语言的网页(zh-CN是中文;EN是英文)
         Accept-Encoding:表现欣赏器支持的压缩范例,如:gzip,deflate等
         只有Post方式的哀求才有哀求体,Get方式哀求是没有哀求体的
        Content-Type:哀求主体的数据范例,好比application/json;charset=UTF-8(UTF-8的json数据) Content-Length:哀求主体的巨细(字节)
        哀求体

        和哀求头之间隔断了一个空行 必须是Post方式的哀求才有哀求体,用于存放哀求参数,Post哀求的巨细是没有限定的(一样寻常是json数据格式) Get方式哀求的参数是在哀求行中的(直接在哀求的资源路径背面拼接),是有巨细限定的

        通过tomcat服务器封装的HttpRequest对象利用哀求数据
  1. package com.wzb;
  2. import jakarta.servlet.http.HttpServletRequest;
  3. import org.springframework.web.bind.annotation.RequestMapping;
  4. import org.springframework.web.bind.annotation.RestController;
  5. // 使用@RequestController将该类设置为请求处理类
  6. @RestController
  7. public class HTTPRequest {
  8.    
  9.     /**
  10.      * 操作HttpServletRequest类获取请求数据
  11.      * @param request
  12.      * @return
  13.      */
  14.     @RequestMapping("/request")
  15.     public String request(HttpServletRequest request) {
  16.         /*
  17.          HTTP协议——请求数据的获取
  18.          Web服务器(Tomcat)对HTTP协议的请求数据进行解析,并将其封装到了HttpServletRequest中,在调用Controller
  19.          方法的时候,将其传递给了该方法,使得程序员不用直接对协议进行操作,只关注于项目的业务逻辑处理
  20.          在程序中可以通过HTTPServletRequest中的方法获取HTTP的请求数据
  21.         */
  22.         // 1.获取请求参数(假如说参数有name和age)
  23.         String name = request.getParameter("name"); // 需要传入参数名即可
  24.         String age = request.getParameter("age");
  25.         System.out.println("name=" + name + " age=" + age);
  26.         // 2.获取请求路径uri和url     url是完整的请求路径 uri是资源的访问路径
  27.         String uri = request.getRequestURI();
  28.         String url = request.getRequestURL().toString(); // 原始的类型是StringBuffer,需要使用toString方法转换为String
  29.         // 3.获取请求头     User-Agent
  30.         String userAgent = request.getHeader("User-Agent");
  31.         System.out.println("userAgent = " + userAgent);
  32.         // 4.获取请求方式
  33.         String method = request.getMethod();
  34.         System.out.println("请求方式是" + method);
  35.         // 5.获取请求协议
  36.         String protocol = request.getProtocol();
  37.         System.out.println("请求协议是" + protocol);
  38.         // 6.获取请求的查询字符串
  39.         String queryString = request.getQueryString();
  40.         System.out.println("请求的查询字符串是" + queryString);
  41.         return "request success";
  42.     }
  43. }
复制代码
        
回复

使用道具 举报

登录后关闭弹窗

登录参与点评抽奖  加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表