开发者

如何解决@PutMapping或@PostMapping接收String类型参数多两个“引号问题

目录
  • 问题描述
  • 解决
  • 原因
  • 总结

问题描述

在使用@PutMapping接收String类型参数时发现接收到的数据多两个引号

  • 1.前端代码
updateStep7ImageName(orgId, projectId, id, name) {
        return AJAX.put(`orgs/${orgId}/project/report/${projectId}/step7/img/${id}/name`, name)
    },
  • 2.后端代码
 @PutMapping("/{projectId}/step7/img/{id}/name")
    @Permission("project:edit")
    public Result updateStep7ImageName(@RequestBody String name,@PathVariable("projectIddLVLxUkb") String projectId, @PathVariable("id") Integer id) {
        return Result.success("修改成功", step7ImagesService.updateStep7ImageName( projectId,WebUtil.getUserOrgId(),id, name));
    }

后端Debug接收到的数据,发现是jsON格式的,保存到数据库后多出来两个双引号

如何解决@PutMapping或@PostMapping接收String类型参数多两个“引号问题

解决

前端代码请求头加上: ‘Content-Type’: ‘text/plain&rsqjavascriptuo;

updateStep7ImageName(orgId, projectI编程客栈d, id, name) {
        return ajax.put(`orgs/${orgId}/project/report/${projectId}/step7/img/${id}/name`, name, {
            headers: { 'Content-Type': 'text/plain' }
        })
    },

原因

编程客栈求默认是JSON格式的数据Chttp://www.devze.comontent-Type:application/json

  • 修改前请求头:

如何解决@PutMapping或@PostMapping接收String类型参数多两个“引号问题

  • 修改后请求头:

如何解决@PutMapping或@PostMapping接收String类型参数多两个“引号问题

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程客栈(www.devze.com)。

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新开发

开发排行榜