代码编织梦想

        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对象操作请求数据

package com.wzb;

import jakarta.servlet.http.HttpServletRequest;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

// 使用@RequestController将该类设置为请求处理类
@RestController
public class HTTPRequest {

    

    /**
     * 操作HttpServletRequest类获取请求数据
     * @param request
     * @return
     */
    @RequestMapping("/request")
    public String request(HttpServletRequest request) {
        /*
         HTTP协议——请求数据的获取
         Web服务器(Tomcat)对HTTP协议的请求数据进行解析,并将其封装到了HttpServletRequest中,在调用Controller
         方法的时候,将其传递给了该方法,使得程序员不用直接对协议进行操作,只关注于项目的业务逻辑处理

         在程序中可以通过HTTPServletRequest中的方法获取HTTP的请求数据
        */

        // 1.获取请求参数(假如说参数有name和age)
        String name = request.getParameter("name"); // 需要传入参数名即可
        String age = request.getParameter("age");
        System.out.println("name=" + name + " age=" + age);

        // 2.获取请求路径uri和url     url是完整的请求路径 uri是资源的访问路径
        String uri = request.getRequestURI();
        String url = request.getRequestURL().toString(); // 原始的类型是StringBuffer,需要使用toString方法转换为String

        // 3.获取请求头     User-Agent
        String userAgent = request.getHeader("User-Agent");
        System.out.println("userAgent = " + userAgent);

        // 4.获取请求方式
        String method = request.getMethod();
        System.out.println("请求方式是" + method);

        // 5.获取请求协议
        String protocol = request.getProtocol();
        System.out.println("请求协议是" + protocol);

        // 6.获取请求的查询字符串
        String queryString = request.getQueryString();
        System.out.println("请求的查询字符串是" + queryString);

        return "request success";

    }
}

        

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/Aishangyuwen/article/details/144071067

HTTP协议请求-爱代码爱编程

什么是HTTP协议请求? HTTP协议规定,请求从客户端发出,最后服务端响应该请求并返回。也就是说,先从客户端开始建立通信的,服务端在没有接受到请求之前不会发送响应。且HTTP协议自身不对请求和响应之间的通信状态进行保存。 (在进行下一步学习之前首先要了解一下HTTP的消息结构) HTTP消息结构 HTTP是基于客户端/服务端的构架模型,通过一个可

HTTP请求协议格式详解-爱代码爱编程

文章目录 请求协议格式1. 首行1.1 URL1.2 方法1.2.1 GET方法1.2.2 POST方法1.2.3 其他方法2. 请求头2.1 Host2.2 Content-Length2.3 Content-Type2.4 User-Agent / UA2.5 Referer2.6 Cookie 请求协议格式 HTTP请求协议由首行、请求

HTTP协议-爱代码爱编程

在介绍http协议之前,我们有必要先了解一下万维网 https://blog.csdn.net/qq_54669536/article/details/124448921 HTTP的操作过程 概述:http协议是超文本传输协议,除了文字以外,它还可以传输声音、图像、文本等各种多媒体文件。http协议定义了万维网客户进程怎样向万维网服务器请求万维网文档

http 协议详解_夏小花花的博客-爱代码爱编程

文章目录 1. HTTP协议介绍2. HTTP协议工作过程4. HTTP协议格式总览5. HTTP 请求(Request)5.1 "方法" MethodGET 方法POST 方法GET和POST区别6. HTTP 响应(Response)6.1 认识 "状态码"(status code)200 OK404 Not Found403 Forbidde

详解 —— http协议-爱代码爱编程

目录 1 HTTP协议格式和抓取 1.1 HTTP抓取 1.2 格式总结  2 请求的格式 2.1 请求行 2.2  请求头 2.3  空行 2.4 请求正文  3 响应的格式 3.1 首行  3.2 响应头  3.3  空行 3.4 响应正文  4 HTTP请求 4.1 认识URL URL encode/decode 

http协议中的各种请求头、请求类型的作用以及用途-爱代码爱编程

目录 一、http协议介绍二、http协议的请求头三、http协议的请求类型四、http协议中的各种请求头、请求类型的作用以及用途 一、http协议介绍 HTTP(HyperText Tra

http协议详细介绍_编写网页文件经常使用什么协议-爱代码爱编程

HTTP(HyperText Transfer Protocol,超文本传输协议)是用于在计算机网络中分发超文本信息的基础协议。它是万维网(World Wide Web)的核心协议之一,允许浏览器、服务器和其他应用程序之间的

docker 配置 http 和 https 网络代理-爱代码爱编程

前言 在内网环境中,为了实现全局代理上网,Linux 系统通常通过修改 .bashrc 或 /etc/profile 等文件,设置 HTTP 和 HTTPS 代理。这种方式可以为大多数应用提供代理支持,但 Docker 并

http/https-爱代码爱编程

1、http与https HTTPHTTPS信息明文传输加入ssl加密传输协议,可以使得报文加密传输默认端口80默认端口443连接简单TCP三次握手通信TCP三次握手后还要SSL/TLS握手过程,才可以加密报文传输无状态不安全需要到CA申请证书,身份认证,自然安全 http/1.0 1. 默认不支持长连接,需要设置keep-alive参数指定 2.

网络原理(一):应用层自定义协议的信息组织格式 & 初始 http-爱代码爱编程

目录 1. 应用层 2. 自定义协议 2.1 根据需求 => 明确传输信息 2.2 约定好信息组织的格式 2.2.1 行文本 2.2.2 xml  2.2.3 json 2.2.4 protobuf 3. HTTP 协议  3.1 特点 4. 抓包工具 1. 应用层 在前面的博客中, 我们了解了 TCP/IP 五层协

http accept用法介绍-爱代码爱编程

一、HTTP Accept是什么 HTTP协议是一个客户端和服务器之间进行通信的标准协议,它定义了发送请求和响应的格式。而HTTP Accept是HTTP协议中的一个HTTP头部,用于告诉服务器请求方所期望的响应格式。这些

http 协议-爱代码爱编程

        HTTP(全称为 "超文本传输协议")是一种应用非常广泛的应用层协议。         HTTP 往往是基于传输层的 TCP 协议实现的。(HTTP1.0, HTTP1.1, HTTP2.0 均为TCP, HTTP3 基于 UDP 实现)目前我们主要使用的还是 HTTP1.1 和 HTTP2.0。 HTTP 协议工作原理 基于 请求-