常见问题之Golang—— invalid character 's' looking for beginning of value
背景
日常我们开发时,会遇到各种各样的奇奇怪怪的问题(踩坑o(╯□╰)o),这个常见问题系列就是我日常遇到的一些问题的记录文章系列,这里整理汇总后分享给大家,让其还在深坑中的小伙伴有绳索能爬出来。
同时在这里也欢迎大家把自己遇到的问题留言或私信给我,我看看其能否给大家解决。
开发环境
- 系统:windows10
- 语言:Golang
- golang版本:1.17
内容
错误
invalid character 's' looking for beginning of value
造成原因:
1、请求头contentType不匹配
2、接收实体中没有有效标记
解决方案:
1、检查实体是否有效设定了json和form,并对必填字段增加了required标记
type User struct {
UserId string `json:"userId" form:"userId" binding:"required"`
UserName string `json:"userName" form:"userName"`
Password string `json:"password" form:"password"`
}
2、客户端如果是一个ajax,则可以按照下方的代码进行检查,注意data需要使用json字符串,不能使用对象,否则后端的contentType就是不对的,不能使用gin框架的BindJSON解析。
$.ajax({
url: "/api/searchFileList",
type: 'post',
data: JSON.stringify(jsonData),
datType: "JSON",
contentType: "application/json",
success: function (data) {
}
本文声明:

88x31.png
知识共享许可协议