SpringCloud微服务前后端分离开发中出现的弱智问题之(不支持当前请求方法)

  • 问题背景
  • 问题解决

为什么说这是一个弱智问题,因为这多是编写代码不仔细造成的。

问题背景

当当后台API发布的接口与前端请求的HttpMethod不一致时就会出现这个问题。
后台代码示例:

/*** @description: 用户控制器类* @author: zheng* @date: Created in 2021/2/3 15:58* @version: 0.0.1* @modified By:*/
@Api(tags = "用户模块api")
@Slf4j
@RestController
public class SysUserController {@ApiOperation(value = "新增或更新用户")@CacheEvict(value = "user", key = "#sysUser.username")@AuditLog(operation = "'新增或更新用户:' + #sysUser.username")@PostMapping("/users/saveOrUpdate")public CompletableFuture<Result> saveOrUpdate(@RequestBody SysUser sysUser) throws Exception {return CompletableFuture.supplyAsync(()->{try {return this.service.saveOrUpdateUser(sysUser);} catch (Exception ex) {log.error("user-saveOrUpdate-error", ex);return Result.failed("新增或更新用户失败:" + ex.getMessage());}});}
}

注意:后台发布的接口使用的事@PostMapping,意思就是支持POST请求

前端请求代码示例:

$.ajax({url: setter.base_server + '/api-user/users/saveOrUpdate',type: 'PUT',data: obj.field,success: function(res){console.log(res);}
});

注意:前端的type使用的是PUT,意思就是以PUT方式请求。这样就导致前端请求的类型与后台API支持的请求类型不一致,前端就会报:不支持当前请求方法的异常。

问题解决

解决的方法很简单就是把前端代码中的type值改为POST就行。如下:

$.ajax({url: setter.base_server + '/api-user/users/saveOrUpdate',type: 'POST',data: obj.field,success: function(res){console.log(res);}
});

SpringCloud微服务前后端分离开发中出现的弱智问题之(不支持当前请求方法)相关推荐

  1. 使用 imitator 实现前后端分离开发中的数据模拟与静态资源映射

    imitator 一个简单易用的 nodejs 服务器, 主要用于模拟 HTTP 接口数据, 请求代理与转发 . 使用imitator,可以解决前后端分离开发中的痛点之一:数据模拟,也可以作为代理服务 ...

  2. 微服务前后端分离角色权限认证体系

    微服务前后端分离角色权限认证体系 建议配合以下阅读加深理解,第一二个尤为重要: SpringSide 3 中的安全框架 http://www.blogjava.net/youxia/archive/2 ...

  3. Java微服务前后端分离技术开发的微信快速框架-教程

    JooLun微信快速开发框架-采用目前最流行的前后端分离框架开发出来的微信快速开发平台.二次开发效率高,技术先进不怕被淘汰 系统特性: Spring Cloud微服务化开发,采用Nacos注册和配置中 ...

  4. 前后端分离项目token怎么验证_微信端前后端分离开发中token验证和数据的获取...

    微信端前后分离开发中,授权认证,获取token和openid是必不可少的一步. 我们的思路是,每次调用接口前,判断cookie里面是否有token和openid,没有的话判断url参数中是否存在,没有 ...

  5. 打包微服务前后端分离项目并部署到服务器 --- 分布式 Spring Cloud + 页面渲染 Nuxt.js

    前言 Spring Cloud项目属于微服务项目,也就是含有多个Sping Boot模块集合而成的项目 Nuxt.js项目属于前端基于Vue的服务端渲染项目 最近在服务器部署上线了一个基于Spring ...

  6. WEB前后端分离开发中的验证与安全问题

    登录验证以及安全问题:  1.请求接口全部用post方式,在后端判断请求方式是否为post 2.登录密码等敏感信息要加密后传输,如用RSA(支付宝里可下载公私钥生成工具),客户端公钥加密,传到服务器后 ...

  7. SpringBoot + Vue前后端分离开发:全局异常处理及统一结果封装

    SpringBoot + Vue前后端分离开发:全局异常处理及统一结果封装 文章目录 SpringBoot + Vue前后端分离开发:全局异常处理及统一结果封装 前后端分离开发中的异常处理 统一结果封 ...

  8. php 跨域 验证_php 前后端分离开发进行跨域请求时ajax发送验证参数token的header头解决方法...

    php前后端分离开发中要实现前后端参数信息交互,必须解决token标识验证问题. 步骤如下: 1.前端ajax发送请求时,要设置一个自定义header头.代码如下: $.ajax({ url:&quo ...

  9. 这份来自阿里的微服务前后端开发手册,火了

    企业技能要求 现在企业通常要求程序员既要有实战技能,也要内功扎实,对于新项目可以快速上手,熟悉底层原理后还应后劲十足,因此在笔试和面试时结合底层知识.实战应用.设计思维三方面进行考查.针对这3个方面的 ...

最新文章

  1. C# 判断远程文件是否存在
  2. Linux 性能监测:Memory
  3. 富文本++php+源码,自己实现富文本编辑器
  4. js获取的值传到java_使用GraalVM从javascript将变量参数传递给java函数
  5. 开发缺点_利用模板去建设开发企业网站好不好?模板建站的缺点?
  6. python安装哪个版本好啊_Python 的版本选择与安装细节
  7. c语言 银行叫号系统,【分享】C语言 银行取票排队系统
  8. 安装ANSYS、SolidWorks、MATLAB等软件出错解决办法汇总(此大乘佛法可解决99.9%的问题)
  9. 已知 char w; int x; float y; double z;,则表达是 w*x+z-y 结果的类型是
  10. Kubernetes核心概念总结
  11. img标签渲染图片流
  12. Git Bash 下进行快速复制粘贴
  13. 计算机打印机端口配置,如何设置打印机端口,打印机端口设置的方法步骤
  14. 计算机音乐谱安娜的橱窗,《安娜的橱窗,钢琴谱》2,封茗囧菌(五线谱 钢琴曲 指法)-弹吧|蛐蛐钢琴网...
  15. JD旗舰店店铺商品详情接口代码对接教程
  16. java Rabbitmq ssl 安全连接详细流程(附图)
  17. 任务清单丨小程序java云服务器配置123
  18. 6轴机器人直线插补运动
  19. Named Entity Recognition for Chinese Social Media with Jointly Trained Embeddings
  20. Redis实战学习--缓存首页图标类型

热门文章

  1. 俄罗斯国产超级计算机,中国第1,美国第2!俄罗斯突然把话挑明:美日联手也没有用...
  2. 小程序是移动互联网下一站 暂不能做游戏|
  3. C语言-qsort函数详解
  4. python socket TCP协议断网重连
  5. [学习心得]Response.Write()方法响应导致页面字体变大的解决方法
  6. 产品规划,你通常规划多久的时间线?
  7. SDK下载安装及配置教程
  8. Android Studio 4.2的SDK安装问题
  9. 大聪明教你学Java | 谈谈SQL优化
  10. 需要拼单的平台数据获取