记录一次前后端传参方式不一致异常

公众号封面

✅作者简介:大家好,我是Leo,热爱Java后端开发者,一个想要与大家共同进步的男人😉😉
🍎个人主页:Leo的博客
💞当前专栏: 报错以及Bug
✨特色专栏: MySQL学习
🥭本文内容:记录一次前后端传参方式不一致异常
🖥️个人小站 :个人博客,欢迎大家访问
📚个人知识库: 知识库,欢迎大家访问

1.前言

大家好,我是Leo哥🫣🫣🫣,最近在写一个前后端分离案例的demo的时候,一个接口中前端向后端传递的参数方式和后端接收的方式不太一致,出现了问题。具体是啥呢,咱们接着往下聊。好了,话不多说让我们开始吧😎😎😎。

2.问题引出

具体是这样的,听我慢慢道来。

首先我是先开发完了后端接口,通过Apifox测试之后,再去进行前台Vue脚手架的开发。因为Apifox是接口测试,当时并没有发现什么问题。

首先看一下我的后台注册接口,这里因为前台注册只需要传入用户名和密码,所以是通过param这种方式进行接收,而不是通过@RequestBody + User对象把其JSON对象转换为Java对象的方式。

image-20231130132952846

反观前端,下面给出我前台user.js中的注册接口,可能我们正常像后端数据,都是按照我这种方式进行传递JSON数据的。

export const registerService = (registerData) => {
    return request.post('/user/register', registerData)
}

可以看出来下图,这里其实这个请求并不会发出,而是在前端直接拦截住了

image-20231130133426032

就是后台是用param来接参数,而你前台则传递的是JSON数据,所以这里是不给通过的。

但是有的朋友的就问:Leo哥,我记得前台可以通过param传递参数啊。

没错是可以的,但那个是get请求,我这里后台注册接口是post请求,所以不太行哈。

3.解决方案

没错,其实就是我们今天要介绍的主角-----URLSearchParams

在Vue的渲染函数中给固定的URL添加参数,你可以使用JavaScript中的URLSearchParams对象来构建查询参数,并将其附加到URL上。

话不多说,直接开干。

image-20231130134256329

只需要new一个URLSearchParams对象,然后把registerData的数据循环添加到参数上,最后传给后台即可。

现在我们再次验证一下我们的接口,进行注册。

image-20231130134452748

可以看出,我们成功进行了注册。

4.总结

以上便是本文的全部内容,本人才疏学浅,文章有什么错误的地方,欢迎大佬们批评指正!我是Leo,一个在互联网行业的小白,立志成为更好的自己。

如果你想了解更多关于Leo,可以关注公众号-程序员Leo,后面文章会首先同步至公众号。

公众号封面

本文由博客一文多发平台 OpenWrite 发布!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/203885.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

同城按摩理疗APP小程序开发制作流程;

同城按摩理疗APP小程序开发制作流程; 开发同城按摩理疗APP小程序,首先需要进行市场调研,深入了解用户需求,明确小程序的定位和服务对象。接着,根据需求分析结果,制定详细的设计方案和开发计划。然后&#…

python中的enumerate函数

enumerate函数是Python内置builtins模块中的一个函数,用于将一个可迭代对象转换为一个索引-元素对的枚举对象,从而方便地同时获得索引和元素,并在循环迭代中使用。 enumerate函数的语法格式为:enumerate(iterable, start0) itera…

Sui与阿联酋科技孵化器Hub71合作支持生态项目建设,扩大全球影响力

近日,总部位于阿联酋( United Arab Emirates ,UAE)的科技孵化器Hub71宣布与Mysten Labs合作,将支持Sui上的新项目。通过本次合作,孵化项目的开发者们不仅可以获得Mysten Labs的技术专业知识和支持&#xff…

基于Java SSM框架+Vue实现垃圾分类网站系统项目【项目源码+论文说明】计算机毕业设计

基于java的SSM框架Vue实现垃圾分类网站系统演示 摘要 本论文主要论述了如何使用JAVA语言开发一个垃圾分类网站 ,本系统将严格按照软件开发流程进行各个阶段的工作,采用B/S架构,面向对象编程思想进行项目开发。在引言中,作者将论述…

北斗卫星助力乡村治理,走进数字化新时代

北斗卫星助力乡村治理,走进数字化新时代 随着国家对乡村治理越来越重视,为了进一步提升乡村治理水平,我国已经启动了全面建设现代化强国的大计划,其中数字化成为了重要的一环。而北斗卫星作为我国自主研制的卫星导航系统&#xff…

【带头学C++】----- 九、类和对象 ---- 9.1 类和对象的基本概念----(9.1.1---9.1.3)

目录 9.1 类和对象的基本概念 9.1.1 类的封装性 9.1.2 定义类的步骤和方法 9.1.3 设计一个学生类 Student 9.1 类和对象的基本概念 9.1.1 类的封装性 类是一种用户自定义的数据类型,它定义了一组数据成员和成员函数。类可以看作是一个模板或者蓝图,用…

echarts实现3D柱状图

效果如图 let setData function(data, constData, showData) {data.filter(function(item) {if (item) {constData.push(1);showData.push(item);} else {constData.push(0);showData.push({value: 1,itemStyle: {normal: {borderColor: "rgba(0,0,0,0)",borderWidt…

BUUCTF [GXYCTF2019]BabySQli 1 详解!(MD5与SQL之间的碰撞)

题目环境burp抓包 随便输入值 repeater放包 在注释那里发现某种编码 MMZFM422K5HDASKDN5TVU3SKOZRFGQRRMMZFM6KJJBSG6WSYJJWESSCWPJNFQSTVLFLTC3CJIQYGOSTZKJ2VSVZRNRFHOPJ5 看着像是base编码格式 通过测试发现是套加密(二次加密) 首先使用base32对此编码…

修复 Apache Kafka 中的远程代码执行漏洞CVE-2023-25194

文章目录 前言一、Log4Shell connection二、DisclosureUpdates, mitigations 前言 Possible RCE and denial-of-service issue discovered in Kafka Connect 在 Kafka Connect 中发现可能的 RCE 和拒绝服务问题。 更新 阿帕奇软件基金会 (ASF) 已解决了一个漏洞,…

enum常用方法 - Java

六、enum常用方法 0、准备工作1、name()2、ordinal()3、values()4、valueOf()5、compareTo()6、toString() 说明:使用关键字enum时,会隐式 继承 Enum类,这样我们就可以使用 Enum 类相关的方法。 0、准备工作 enum Season2 {SPRING("…

富必达API:一站式无代码开发集成电商平台、CRM和营销系统

一站式无代码开发的连接解决方案 电子商务、客户服务系统以及其它商业应用,是现代企业运营的重要部分。然而,将这些系统进行有效的整合往往需要复杂的API开发,这对很多企业来说是一个巨大的挑战。富必达API以其一站式的无代码开发解决方案&a…

一键上传,无限容量!打造高效图床工具,利用Electron和Gitee搭建自己的私人云存储空间

说在前面 平时写文章或写代码的时候,都少不了需要将本地图片转成在线图片链接,大家都是使用什么工具进行转换的呢?相信很多人都有自己的图床工具,今天来给大家介绍一下,怎么基于Gitee和Electron来开发一个便捷的图床工…

Docker本地部署Firefox火狐浏览器并远程访问

🔥博客主页: 小羊失眠啦. 🎥系列专栏:《C语言》 《数据结构》 《Linux》《Cpolar》 ❤️感谢大家点赞👍收藏⭐评论✍️ 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,…

上市公司数字化转型及同群效应数据集合(四种测算方法)

数据简介:当今世界处于高速发展的信息时代中,数字革命的产生催生出大量数字技术和数字信息。在数字经济时代,数字化转型赋予了企业新的发展动能,数字化转型已经成为诸多企业高质量发展的重要路径。是否需要进行数字化转型、能否及…

windows启动后直接进入指定程序并且不显示欢迎界面和windows桌面

windows启动后直接进入指定程序并且不显示欢迎界面和windows桌面 前言开机进入指定程序方法问题 浅尝GINA和Credential Providers关闭欢迎屏幕 前言 由于系统需求需要做到电脑开机后显示完windows加载页面就直接进入自己系统的界面,并且不显示登录欢迎页面&#xf…

IDE1007:当前上下文中不存在名称“xxx“

这种在Halcon中直接导出的代码不能直接放程序中,应该在控件中比如一个按钮中,就不会出错了。

Docker安装可视化工具Portainer

目录 Portainer简介 Portainer安装 Portainer简介 Portainer是一款开源的容器管理平台,支持多种容器技术,如Docker、Kubernetes和Swarm等。它提供了一个易于使用的Web UI界面,可用于管理和监控容器和集群。Portainer旨在使容器管理更加简单…

【celery踩坑】celery定时和周期任务全部不执行

一、背景 有一天,突然发现线上系统上的任务没有执行,状态一直是未完成。 看了一下celery的beat日志,发现周期任务和定时任务都不执行了。 重启项目,发现django_celery_beat_periodictask中,也只是执行前面几个周期或者…

C语言之“可变参数<stdarg.h>”

目录 前言 stdarg.h头文件 实例:遍历并求和所有传递给sum函数的额外实际参数 前言 有时我们会希望函数带有可变数量的参数就像printf(cosnt char* format ...)和scanf(cosnt char* format ...)那样除了有一个参数 …

【用unity实现100个游戏之17】从零开始制作一个类幸存者肉鸽(Roguelike)游戏6(附项目源码)

文章目录 本节最终效果前言开始游戏主角扣血和死亡游戏结束清屏效果赢得比赛角色选择界面每个角色有自己的特点,及初始属性不一样参考源码完结 本节最终效果 前言 本节紧跟着上一篇,主要实现不同游戏界面和不同角色选择。 开始游戏 简单绘制UI 修改…
最新文章