后端接收格式为x-www-form-urlencoded的数据
1.x-www-form-urlencoded是什么?
x-www-form-urlencoded纸面翻译即所谓url格式的编码,是post的默认Content-Type,其实就是一种编码格式,类似json也是一种编码传输格式。form表单中使用
form的enctype属性为编码方式,常用有两种:application/x-www-form-urlencoded和multipart/form-data,默认为application/x-www-form-urlencoded。
2.x-www-form-urlencoded类型后端怎么接收
用登录案例来作说明,登录的时候需要输入账户跟密码。但是前端使用的是x-www-form-urlencoded类型传输,所以我们也需要使用x-www-form-urlencoded类型接收
2.1后端Controller层接收代码一
@ApiOperation(value = "用户登陆获取token", position = 5, notes = "用户登陆获取token")@ApiImplicitParams({@ApiImplicitParam(name = "account", value = "用户名", dataType = "String"),@ApiImplicitParam(name = "password", value = "密码", dataType = "String"),})@RequestMapping(value="/login",method= RequestMethod.POST)public Result loginPC(String account ,String password ) throws Exception {Map map = UserService.LoginUer(account, password);return Result.success(map);}
需要使用到@ApiImplicitParam,若有多个参数的话使用@ApiImplicition进行包裹。
接收x-www-form-urlencoded类型的关键点就在于@ApiImplicitParam。免去了使用@RequestBody在写一个接收类的繁琐步骤,加上@ApiImplicitParam之后直接接收即可。
若使用application/x-www-form-urlencoded类型传输数据过来,后端使用@ReposeBody接收,或出现报错
Content type 'application/x-www-form-urlencoded;charset=UTF-8' not supported
若出现上边的错误,只需要按照上边代码修改一些接收参数即可
所以使用application/x-www-form-urlencoded类型传输数据过来,需要使用@ApiImplicitParam说明参数并且接收
2.1@ApiImplicitParam说明
@ApiImplicitParam是一个标注方法参数的注解
注解内的属性有
name:参数名
value:参数的中文含义
required:是否必须
dataType:参数类型
paramType:参数所放位置
defaultValue:参数的默认值
其中,paramType可选值有header、query、path
header标注为从@RequestHeader中获取
query标注为从@RequestParam中获取
path从标注为@PathVariable中获取
方法中有多个参数时,使用@ApiImplicitParams包围
@ApiImplicitParams({@ApiImplicitParam(name = "account", value = "用户名", dataType = "String"),@ApiImplicitParam(name = "password", value = "密码", dataType = "String"),})
2.2后端Controller层接收代码二
x-www-form-urlencoded:表单的形式,表单格式。可以直接接收DTO数据,方法上不使用@ApiImplicitParams 。直接整个dto接收数据,不需要加上@ReposeBody.按照下方代码接收就可以达到目的
@ApiOperation(value="系统查询", position = 2, notes="系统查询",response =SysUserDTO.class)@RequestMapping(value = "/query",method = RequestMethod.GET )public Result query(@Validated ConditionDTO dto, @Validated PageDTO page) throws Exception{PageResultDTO<SysUserRDTO> result = UserService.query(dto, page);return Result.success(result);}
3.x-www-form-urlencoded测试软件怎么测试
以下是使用apipost进行测试的示例
后端接收格式为x-www-form-urlencoded的数据相关推荐
- Column ‘XXX‘ cannot be null问题 后端接收不到前端表单提交的数据
前景摘要:整合SSM练习Insert语句时,想通过前端页面的表单将数据通过后端的处理存储到数据库,但是一直报Column '列名' cannot be null(某个列名不能为空)的错误,急着知道的直 ...
- Java后端接收前端post方式传来的表单数据
可以通过HttpServletRequest和@RequestParam注解来获取post提交的表单数据 1.使用HttpServletRequest来获取 @PostMapping(value = ...
- 前端form表单上传图片等信息,python后端接收
前端form表单上传图片等信息,python后端接收. 最近总需要做关于图片上传的东西.一直百度,这次想自己记录一下. HTML代码: <form class="box" a ...
- Thymeleaf的List各类问题(后端接收对象集合)
最近在Thymeleaf做一个页面的时候,因为需要使用List循环展示,提交List到后端,出现各种问题,解决起来也不甚痛苦,这里把解决问题的方式分享一下,也便于自己记录. 介绍: 需求是前端页面循环 ...
- 后端接收Get请求与Post请求 参数示例
博主介绍: 22届计科专业毕业,来自湖南,主要是在CSDN记录一些自己在Java开发过程中遇到的一些问题,欢迎大家一起讨论学习,也欢迎大家的批评指正. 文章目录 前言 正文 接收Get请求的参数 不使 ...
- 应用服务器与WSGI协议以及flask后端框架总结(后端接收请求返回响应的整个流程)...
上次遗留了两个问题,先说一下自己的看法 问题: 1.明明一个线程只能处理一个请求,那么栈里的元素永远是在栈顶,那为什么需要用栈这个结构?用普通变量不行吗. 2._request_ctx_stack和_ ...
- js图片canvas压缩后端接收
你添加一个 , canvas.onload 确保图片加载完成了, 再使用 drawImage <!DOCTYPE html> <html lang="en"> ...
- 小猿圈Python学习教程之后端接收前端回传的文件方法
现在人工智能已经深入到千家万户,随之而来的就是python技术的火爆,今天小猿圈python讲师为你讲解一下后端接收前端回传的文件方法,希望对于刚刚自学python的你有一定的帮助. 如下所示: fi ...
- ssm idea后端接收数据输出在控制台时出现中文乱码
idea 后端接收数据输出在控制台时出现中文乱码 环境 maven项目, ssm框架(spring+springmvc+mybatis)注解和配置文件混合开发, tomcat服务器 解决乱码的方式(推 ...
最新文章
- 针灸研究登上Nature:哈佛团队找出刺激穴位治疗疾病背后原理
- STM32 基础系列教程 4 – 基本定时器
- 可能是目前最给力的开源硬件——ESPlay Micro V2,童芯派劲敌他来了
- python基础语法手册_说一说python中的几个基础语法
- Effective C++ 学习笔记(11)
- 一致性hash算法_(图文案例)一致性哈希算法详解 一点课堂(多岸教育)
- 忘记mysql数据库名称_忘记MySQL数据库密码的解决办法
- Java-Socket实现文件的断点续传
- sqlserver中能用when_【SQL】SQL中Case When的用法
- mac下virtualbox虚拟机centos联网问题
- npy文件转图像并显示
- java学生管理系统报告_java学生管理系统总结报告.doc
- 如何为长期旅行做准备
- 我国的离婚率现状,通过数据的可视化展示,来直观的展现给大家
- 解析 URP 教务系统, 创建查成绩 APP !
- 微信小程序中使用iconfont图标
- AD中如何快速画完原理图引脚?
- 微信平台 签名生成工具
- VMware Workstation Pro 16下载地址及key
- C#设置默认打印机界面