java-Spring-mvc-(请求和响应)

目录

 

📌HTTP协议

超文本传输协议

请求 Request

响应 Response

🎨请求方法

 GET请求

POST请求


📌HTTP协议

超文本传输协议

HTTP协议是浏览器与服务器通讯的应用层协议,规定了浏览器与服务器之间的交互规则以及交互数据的格式信息等。

用途 : 网页获取,数据的传输

特点

应用层协议,使用tcp进行数据传输;

有丰富的请求类型;

可以传输的数据类型众多.

访问页面流程

原图 

亿图图示https://www.edrawmax.cn/online/share.html?code=12a56234049e11ef94adf9ef8352e1d6

请求 Request

 HTTP请求 Request

浏览器给服务端发送的内容称为请求Request,一个请求包含三部分:请求行请求头请求体

请求行 : 具体的请求类别和请求内容

GET              /                        HTTP/1.1

请求类别      抽象路径            协议版本            

请求类别: 

请求类别
GET获取服务器资源
POST新增服务器资源
PUT更新服务器资源
DELETE删除服务器资源

关于抽象路径

默认路径

请求URL地址为:http://localhost:8080/

请求行为:GET /HTTP/1.1

其他路径(非默认路径)

请求URL地址为:http://localhost:8080/v1/users/login

请求行为:GET  /v1/users/login         HTTP/1.1

请求头:对请求的进一步解释和描述

请求头是浏览器可以给服务端发送的一些附加信息,有的用来说明浏览器自身内容,有的用来告知服务端交互细节,有的告知服务端消息正文详情等。

Host: localhost:8080
Connection: keep-alive
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.130 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9

 请求体: 请求参数或者提交内容

请求体通常是用户上传的信息,比如:在页面输入的注册信息,上传的附件等内容。

响应 Response

浏览器给服务端发送的内容称为请求Request,一个请求包含三部分:请求行,请求头,请求体

响应头

响应头与请求中的消息头格式一致,表示的是服务端发送给客户端的附加信息。

http://localhost:8080/v1/users/login?username=xxx&password=yyy

Url组成
协议(Protocol)指定访问资源的协议类型(HTTP,HTTPS 等)
主机名(Hostname)指定访问服务器的主机名或者域名
端口号(port)指定服务器器的端口号,不同协议和应用使用不同的端口号
路径(path)指定访问的资源路径 或文件或文件夹的路径
查询参数用于传递一些额外的信息给服务器

注意 :查询参数和路径Path之间使用 ?分隔,多个查询参数之间使用 & 分隔。

🎨请求方法

 GET请求

​ GET请求是HTTP协议中最常见的请求方式之一,它用于从服务器获取数据。

​ GET请求将查询参数附加在URL之后,通过“?”符号进行分隔。

查询参数

GET请求的参数通常以键值对的形式附加在URL之后


http://example.com/users?name=John&age=25

 以下URL中,“?name=John&age=25”是两个查询参数,分别表示名字和年龄

注意事项

GET请求的参数是可见的,因此在URL中传递敏感信息时需谨慎。

GET请求的长度有限制因为URL的长度有限制,因此当传递大量数据时,应考虑使用POST或其他方式。

POST请求

​ POST请求是另一种常见的HTTP请求方式,它用于向服务器提交数据。与GET请求不同,POST请求将数据放在请求体(Request Body)中,而不是URL中。

POST /users HTTP/1.1  
Host: example.com  
Content-Type: application/json  
Request Body: {"username": "john", "password": "secret"}

POST请求的注意事项

POST请求的数据是私密的,不会显示在URL中,因此更适合传递敏感信息。

POST请求的长度没有限制,可以提交大量的数据。

发送POST请求

经常在 form 表单中发送。

<form action="请求地址" method="post">
    <input type="text" name="username">
    <input type="text" name="password">
    <input type="submit" name="登录">
</form>

传递数据方式

客户端向服务端传递数据的方式分为GET请求和POST请求两种方式。

传递方式
GET请求在查询参数中传递
POST请求在请求体中传递

  • 17
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
`feign-spring-mvc-starter` 是一个 Feign 的扩展,它支持使用 Spring MVC 注解来定义和调用 REST 服务。使用 `feign-spring-mvc-starter`,你可以像使用 Spring MVC 控制器一样定义 Feign 客户端,从而更方便地进行 REST 服务的开发。 在使用 `feign-spring-mvc-starter` 之前,你需要先了解 Feign 和 Spring MVC 的基本概念和用法。 Feign 是一个声明式的 Web 服务客户端,它可以帮助你更方便地定义和调用 REST 服务。Feign 的基本使用方法是定义一个接口,用于描述 REST 服务的 API,然后使用 Feign 注解来声明这个接口。 Spring MVC 是一个基于 Java 的 Web 框架,它提供了一组注解和 API,用于处理 Web 请求响应。 `feign-spring-mvc-starter` 将 Feign 和 Spring MVC 结合起来,使你可以使用 Spring MVC 注解来定义和调用 REST 服务。使用 `feign-spring-mvc-starter`,你可以更方便地使用 Feign 来调用 REST 服务。 以下是一个使用 `feign-spring-mvc-starter` 的示例: 1. 添加 Maven 依赖 在 pom.xml 文件中添加以下依赖项: ```xml <dependency> <groupId>io.github.openfeign</groupId> <artifactId>feign-spring-mvc</artifactId> <version>5.3.1</version> </dependency> ``` 2. 定义 Feign 接口 定义一个 Feign 接口,用于描述 REST 服务的 API。例如: ```java @FeignClient(name = "example-service") public interface ExampleClient { @GetMapping("/example") String getExample(); } ``` 在这个接口中,我们使用了 `@FeignClient` 注解来声明这个接口是一个 Feign 客户端,并指定了服务的名称。然后,我们定义了一个 `getExample()` 方法,用于调用 example-service 服务的 /example 路径。 3. 定义 Spring MVC 控制器 定义一个 Spring MVC 控制器,用于处理来自客户端的请求。例如: ```java @RestController public class ExampleController { private final ExampleClient exampleClient; public ExampleController(ExampleClient exampleClient) { this.exampleClient = exampleClient; } @GetMapping("/") public String index() { return exampleClient.getExample(); } } ``` 在这个控制器中,我们注入了 `ExampleClient`,并在 `index()` 方法中使用它来调用 example-service 服务的 /example 路径。 4. 运行应用程序 现在,你可以运行应用程序并访问 http://localhost:8080/ ,你应该会看到来自 example-service 服务的响应。 这就是一个使用 `feign-spring-mvc-starter` 的示例。使用 `feign-spring-mvc-starter`,你可以更方便地使用 Feign 来调用 REST 服务。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值