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

POST 方法是否能提交 @RequestParam的使用

POST 方法能提交 @RequestParam 类型的参数,以及在 Vue3 中如何实现这种前端请求,核心是搞懂 POST + @RequestParam 的适配方式和前端具体代码写法。
 

二、核心结论

 
POST 方法完全可以提交 @RequestParam 参数
 
@RequestParam 本质是接收「URL 查询参数」或「表单键值对参数」,和请求方法(GET/POST)无关 —— 只要前端按对应格式传参,POST 方法一样能被 @RequestParam 解析。
 

三、Vue3 实现 POST + @RequestParam 的两种方式

 

方式 1:表单格式(推荐,适配 application/x-www-form-urlencoded

 
这是最标准的方式,对应服务端 @RequestParam 接收,也是你之前登录接口的适配方式。
 
前端 Vue3 代码(axios 示例)
<template><div><input v-model="username" placeholder="用户名" /><input v-model="password" type="password" placeholder="密码" /><button @click="login">登录</button></div>
</template><script setup>
import axios from 'axios';
import { ref } from 'vue';// 定义参数
const username = ref('');
const password = ref('');// 登录请求(POST + 表单格式参数)
const login = async () => {try {// 1. 构造表单参数(键值对)const params = new URLSearchParams();params.append('username', username.value);params.append('password', password.value);// 2. 发送POST请求const res = await axios.post('/login', // 请求地址params,   // 请求体(表单格式){// 关键:设置Content-Type为表单格式headers: {'Content-Type': 'application/x-www-form-urlencoded'}});console.log('登录成功', res.data);} catch (err) {console.error('登录失败', err);}
};
</script>
 
 
简化写法(用 qs 库,更便捷)
 
如果参数多,可借助 qs 库(需先安装:npm install qs):
import qs from 'qs';// 替换上述 params 部分
const data = {username: username.value,password: password.value
};
// qs.stringify 会把对象转成 "username=admin&password=123456" 格式
const res = await axios.post('/login', qs.stringify(data), {headers: {'Content-Type': 'application/x-www-form-urlencoded'}
});
 

方式 2:查询参数(URL 拼接,GET/POST 通用)

@RequestParam 也能接收 URL 后的查询参数,POST 方法同样支持这种方式(但不推荐传密码等敏感信息)。
前端 Vue3 代码
const login = async () => {try {const res = await axios.post('/login', // 请求地址{}, // POST请求体为空{// 参数拼在URL后(?username=xxx&password=xxx)params: {username: username.value,password: password.value}});console.log('登录成功', res.data);} catch (err) {console.error('登录失败', err);}
};
 
 

四、服务端对应代码(无需修改,保持原 @RequestParam 即可)

java
 
@PostMapping("/login")
public Result<String> login(@RequestParam String username,@RequestParam String password) {// 业务逻辑...return Result.success("登录成功", token);
}
 
 

五、关键区别与注意事项

 
方式Content-Type参数位置适用场景
方式 1(表单) application/x-www-form-urlencoded 请求体 普通业务参数(推荐,支持敏感信息)
方式 2(查询参数) 无(默认) URL 后缀 非敏感、简单参数(不推荐传密码)
 

避坑点:

  1. 前端用方式 1 时,必须设置 Content-Type: application/x-www-form-urlencoded,否则服务端无法解析;
  2. 不要把 JSON 对象直接传给 POST 请求体(比如 axios.post('/login', {username, password}))—— 此时 Content-Type 是 application/json,服务端 @RequestParam 会解析失败;
  3. 敏感参数(如密码)优先用方式 1(请求体),避免拼在 URL 中(URL 会被日志记录,不安全)。
 

总结

  1. POST 方法完全支持提交 @RequestParam 参数,核心是前端传参格式匹配;
  2. Vue3 中推荐用「URLSearchParams/qs 库 + application/x-www-form-urlencoded」的方式,参数放在请求体;
  3. 服务端无需修改 @RequestParam 代码,保持原有写法即可;
  4. 敏感参数避免拼在 URL 中,优先用表单格式传请求体。
http://www.jsqmd.com/news/394711/

相关文章:

  • 单北斗GNSS在变形监测系统中的应用与优势分析
  • 导师严选! 降AIGC工具 千笔 VS 云笔AI,研究生专属更高效!
  • 【雷达原理 学习笔记】至P69
  • 超越IDE:为什么AI正在将你的终端变成最智能的编程界面 - 详解
  • 【雷达原理学习笔记】64.P64目标距离测量(三)时间鉴别器的工作原理与数学模型 65.P65目标距离测量(四)
  • 如何在vs中使用Qt
  • 林区防火巡逻小车,识别烟雾明火巡山,输出火警预警。
  • 直接上结论:10个AI论文工具测评!继续教育毕业论文写作必备指南
  • 题解:洛谷 B2006 地球人口承载力估计
  • 直接上结论:9个AI论文网站测评!专科生毕业论文写作必备工具推荐
  • 一遍搞定全流程!当红之选的AI论文写作软件 —— 千笔·专业论文写作工具
  • 拖延症福音!降AIGC网站 千笔·专业降AIGC智能体 VS 灵感ai 专科生专属
  • FastAPI实战:WebSocket长连接保持与心跳机制,从入门到填坑
  • 题解:洛谷 B2004 对齐输出
  • 哪些柠檬酸酒精好氧菌种厂家值得关注?最新观察,市面上做得好的柠檬酸酒精好氧菌种公司口碑排行技术实力与市场口碑领航者 - 品牌推荐师
  • 《国产体系运维笔记》第2期:在 openEuler 24.03 LTS 上在线部署 Tomcat 9 全记录
  • Matlab图像去噪处理:还图像一片清晰天地
  • 题解:洛谷 B2003 输出第二个整数
  • 2026最新 APP隐私政策合规指南:全流程开发+检测+长效建设,规避监管风险、筑牢数据安全防线
  • YOLO26涨点改进 | 独家首发、注意力改进篇 | Arxiv 2025 | YOLO26引入PGSSA引导光谱自注意力,结合全局和局部光谱自注意力机制,提升局部细节识别,有效涨点起飞
  • 深入理解x86内存寻址:从8086实模式到IA-32段页式映射Linux内核实现
  • 高危预警|CVE-2025-4318 深度剖析:AWS Amplify Studio 远程代码执行漏洞(含完整复现+攻防对抗思路)
  • Content-Type 是 HTTP 请求 / 响应头中核心的字段
  • 一字致命:单字符误写(代|)引爆Firefox 0Day RCE漏洞,内核安全再敲警钟
  • Agent驱动·自主运维:Swimlane AI安全运营中心,重构网络安全防御新范式
  • Java 接口测试框架 Restassured
  • 2026+ SRC众测漏洞挖掘实战指南:从入门到高分洞,全覆盖干货秘籍
  • 2026无锡紧固件生产厂家大揭秘,推荐几家靠谱之选,标准件/螺母/五金件/涂胶/非标螺丝/螺栓/螺丝,紧固件厂家价格多少 - 品牌推荐师
  • 人机共生·能力重构——AI时代安全工程师培养的新范式与未来路径
  • 2026年宁波60年树龄高端荒野红茶厂家哪家好?这几家值得关注,高端红茶,60年树龄高端荒野红茶优质厂家排行 - 品牌推荐师