前端传输JSON格式数据 居然尾随了一个等于号...

问题:

项目中 前端传JSON数据到后端接口时 数据尾部多了一个等于号


解决办法:

前端 设置请求体类型 以及 数据格式
后端也要指定 接受数据 的格式

在写前后端接口的时候,我的前端将表单的数据封装后转成JSON格式 想着传到后端来解析一波

前端代码

前端传输JSON格式数据 居然尾随了一个等于号..._第1张图片

传过来 一解析 发现数据的最后面 多了一个 等于 号,一开始我还怀疑我的前端封装哪里封装错了

后端代码

前端传输JSON格式数据 居然尾随了一个等于号..._第2张图片

那我就在前端控制台打印一下看看…

前端传输JSON格式数据 居然尾随了一个等于号..._第3张图片

发现没错… 咦~ 怎么到后端就错了呢,问题肯定是出在AJAX做数据传输的时候…

网上搜索了一下,发现

当前我们使用 Ajax 发送数据的传输格式 为 JSON

但是发送http请求的时候contentType我们并没有设置它的值

contentType的值默认是为application/x-www-form-urlencoded;charset=UTF-8

恰好这种数据结构是一种 KV键值对 的数据结构

在传输的时候将 JSON 当成了键 中间加了一个等号 值为空 例如【JSONData= 】所以传输到后端 就会导致多出来一个 等号

既然发现错误了 , 整改如下:

前端指定数据类型以及请求头类型

在这里插入图片描述

后端指定接受的类型

在这里插入图片描述

至此 数据即可成功传输~

你可能感兴趣的:(项目搭建问题,前端,后端)