一句话让spring-boot帮我开启浏览器参数内容协商策略

简介: 一句话让spring-boot帮我开启浏览器参数内容协商策略

一句话:

背后的原理:

当我们开启参数协商以后在RequestResponseBodyMethodProcessor里 有个方法

有个writeWithMessageConverter 这里包含消息的读和写操作 进入查看发现:

里面有个获取request的可以接受的类型 继续进入

调用了一个内容协商管理器的方法。进入方法

此方法遍历所有的strategy 我们查看此时的策略发现

此时存在两个策略一个是参数内容协商 另外是请求头内容协商。

oh 原来当我们写下那句 spring.mvc.contentnegotiation.favor-parameter=true

竟然会增加一种策略


咳咳,继续。。

进入strategy.resolveMediaTypes查看发现:


调用了一个方法解析媒体类型key 其中有个参数getMediaTypeKey 点击进入


原来在这个策略里会找到我们发送的参数名字 format ohhhhh!

ok 回到这个参数策略的方法

进入这个方法

获得key对应的媒体类型 如果key的mediaType为空返回*/*

相关文章
|
1月前
|
Java 数据库连接 Spring
Spring Boot命令行启动添加参数
Spring Boot命令行启动添加参数
|
2月前
|
XML Java 数据库连接
spring boot 参数的过滤注解与实战
在Spring Boot应用中,对于入参的过滤,通常会涉及到对Web层的数据验证和处理。Spring Boot借助Spring框架提供了强大的验证框架支持,主要基于JSR-303/JSR-380(Bean Validation API)规范,以及Spring自身的@Valid或@Validated注解来实现请求参数的验证。以下是一些常见的使用案例来展示如何对参数进行过滤和验证。
33 1
|
2月前
|
前端开发
调试前端时,在浏览器上修改参数并重新调用接口
有时候我们的页面点击过了,但是接口出问题,想修改参数再调用一次,一般是用apiPost工具把接口复制,再加上token和参数,但是这样非常的效率比较低。
45 0
|
4月前
|
Java 数据安全/隐私保护
SpringBoot - 优雅的实现【参数分组校验】高级进阶
SpringBoot - 优雅的实现【参数分组校验】高级进阶
47 0
|
4月前
|
Web App开发 前端开发
Chrome 浏览器插件 V3 版本 Manifest.json 文件中 Action 的类型(Types)、方法(Methods)和事件(Events)的属性和参数解析
Chrome 浏览器插件 V3 版本 Manifest.json 文件中 Action 的类型(Types)、方法(Methods)和事件(Events)的属性和参数解析
161 0
|
4天前
|
前端开发 Java
SpringBoot之自定义注解参数校验
SpringBoot之自定义注解参数校验
14 2
|
8天前
|
Java 微服务 Spring
Spring Boot中获取配置参数的几种方法
Spring Boot中获取配置参数的几种方法
20 2
|
14天前
|
开发框架 Java 开发者
Spring Boot接收参数的多种方式
【4月更文挑战第20天】
13 0
|
20天前
|
JSON Java 数据格式
Spring Boot实现各种参数校验
这些是Spring Boot中实现参数校验的一些常见方法,你可以根据项目需求选择适合的方式来进行参数校验。
16 0
|
27天前
|
前端开发 Java Spring
参数解密:揭示Spring MVC请求参数处理的实际应用指南
参数解密:揭示Spring MVC请求参数处理的实际应用指南
26 1