位置: IT常识 - 正文

多种方法解决前后端报出的SyntaxError: xxx is not valid JSON的问题,比如“[object Object]“ is not valid JSON(有什么办法解决前进中的问题)

编辑:rootadmin
多种方法解决前后端报出的SyntaxError: xxx is not valid JSON的问题,比如“ 文章目录1. 复现问题2. 分析问题3. 解决问题4. 该错误的其他解决方法5. 文章总结1. 复现问题

推荐整理分享多种方法解决前后端报出的SyntaxError: xxx is not valid JSON的问题,比如“[object Object]“ is not valid JSON(有什么办法解决前进中的问题),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:方法解决前进中的问题,多种方法解决前列腺问题,解决前加什么修饰词,解决前面加什么词语,多种方法解决前任的问题,多种方法解决前列腺炎,多种方法解决前任的问题,多种方法解决前任的问题,内容如对您有帮助,希望把文章链接给更多的朋友!

今天启动后端服务,访问knife4j文档时,却报出如下错误:

于是,按F12打开调试页面板,找到了具体的错误信息,如下所示:

即SyntaxError: Unexpected token 'l', ..."example":[list,from]"... is not valid JSON。

如果的你的F12无法打开调试面板,可以参考博文:多种方法解决谷歌(chrome)、edge、火狐等浏览器F12打不开调试面板的问题。

2. 分析问题

SyntaxError: Unexpected token 'l', ..."example":[list,from]"... is not valid JSON表示[list,from]不是一个有效的json。

于是,将[list,from]数组粘贴到在线的json工具中,如下所示:

在线的json工具地址为:https://www.sojson.com/

【注意】上述第二张图中——调试面板的第2行错误信息。 如果不是一个有效的Json,JSON.parse解析在解析该值时,就会报出错误。

而我的代码配置写的正是[list,from],如下图所示:

3. 解决问题

如果想要让他成为有效的json,可以进行[list,from]修改为["list", "from"],如下图所示:

于是,将["list", "from"]该值复制到配置文件中,如下图所示:

【注意】\"是转义符号,如果最外层已存在双引号,里面再引入双引号就需要转义。

此时,重新启动服务,便能正常访问了,如下图所示:

多种方法解决前后端报出的SyntaxError: xxx is not valid JSON的问题,比如“[object Object]“ is not valid JSON(有什么办法解决前进中的问题)

这是后端该错误的解决方法,如果你是前端报出的错误,可以参考如下解决方法。

4. 该错误的其他解决方法

报出该错误的原因,一般是你写的json有问题。

当然,如果你不确定问题出现在哪里,可以使用在线的json工具查看。

如果你是前端报出的错误,可以参考如下解决方案。

检查解析json是否有误

假设,前端在取cookie中的user_cookie时,要使用JSON.pase()方法将user_cookie解析为json对象,但在解析时便报出[object Object] is not valid JSON,如下代码所示:

var userCookie = cookie.get("user_cookie");// 把字符串转换json对象(js对象)if (userCookie) { this.loginInfo = JSON.parse(userCookie);}

因为,在保存user_cookie时,没有将对象转为字符串,如下代码所示:

//获取返回用户信息,放到cookie里面cookie.set('user_cookie',this.loginInfo,{domain: 'localhost'})

因而,在保存user_cookie时,需要将对象转为字符串,如下代码所示:

//获取返回用户信息,放到cookie里面cookie.set("user_cookie", JSON.stringify(this.loginInfo), {domain: "localhost",});项目打包中的package.json或者manifest.json出现问题

项目在打包时,报出了Manifest is not valid JSON. Line: 1, column: 1。

出现这个问题,一般是因为package.json或者manifest.json文件出了问题,而不要以为是xxx.manifest文件出了问题。

如果你的package.json或者manifest.json代码是网页上复制来的,很容易出现标点符号的错误,比如英文的双引号写成了中文的双引号,而标点符号的错误会导致这个问题。

报错原因也很容易看见,line为行数,column为列或者说是属性,即Line: 1, column: 1表明第一行第一个属性出了问题。

后来发现复制来的json里,双引号居然是中文的,而在记事本看不出来,如下图所示:

因而,复制好json对象后,最好使用在线的json工具检查下。

前端请求的数据格式有问题。

如果你使用的是工具类(比如postman)向后端发送请求数据,最好需要先设置请求头 'Content-Type' : 'application/json;charset=utf-8',然后数据用json对象格式,如下图所示:

比如,前端使用post请求传的参数格式存在问题,有可能导致后端无法解析参数而报出如下错误:

当然,你如果在js里面,其实不用考虑这个问题,一般axios发送post请求,请求头就是这个格式,传递数据需要是对象格式:

vue.js:axios({ method:'post', url:'/api/admin/category', data:{name: 'test-data',pid:0}})

使用Ajax发送,可以这样写,比如ajax.js:

$.ajax({ url: '/api/v1/books', data: JSON.stringify({test: 'test-data'}), dataType: 'json', contentType: 'application/json', type: 'POST' });

如果上述方法还未解决你的问题,可以在评论区中留言。

5. 文章总结

如果你对knife4j感兴趣,可以参考博文:https://blog.csdn.net/lvoelife/article/details/128114264

代码是千变万化的,但思想是始终不变的:一般报出这个错误SyntaxError: xxx is not valid JSON,都是我们写的json存在问题。

我们可以根据自己的代码,找出json在哪里写错了,然后对症下药即可。

本文链接地址:https://www.jiuchutong.com/zhishi/295200.html 转载请保留说明!

上一篇:手把手教你使用--常用模块--HC05蓝牙模块,无线蓝牙串口透传模块,(实例:手机蓝牙控制STM32单片机点亮LED灯)(手把手教你使用opc)

下一篇:聊聊vue3的defineProps、defineEmits、defineExpose

  • excel表格如何求和(excel表格如何求乘积)

    excel表格如何求和(excel表格如何求乘积)

  • excel怎么十字追踪行和列(excel2016怎么十字追踪行和列)

    excel怎么十字追踪行和列(excel2016怎么十字追踪行和列)

  • 华为nova7pro的电池是多大容量的(华为nova7pro的电话卡怎么取)

    华为nova7pro的电池是多大容量的(华为nova7pro的电话卡怎么取)

  • 蓝牙耳机说话声音小(蓝牙耳机说话声音小对方听不见)

    蓝牙耳机说话声音小(蓝牙耳机说话声音小对方听不见)

  • 文本框有什么和什么两种方式(文本框有什么和什么区别)

    文本框有什么和什么两种方式(文本框有什么和什么区别)

  • db卡贴是什么东西(dbpro卡贴)

    db卡贴是什么东西(dbpro卡贴)

  • 无线摄像头二维码丢了怎么办(无线摄像头二维码丢了怎么连接手机)

    无线摄像头二维码丢了怎么办(无线摄像头二维码丢了怎么连接手机)

  • 微信表情在哪个文件夹(怎么制作表情包在微信上)

    微信表情在哪个文件夹(怎么制作表情包在微信上)

  • 数据库中表之间的关系有哪三种关系(数据库中表之间存在着三种关系:一对一)

    数据库中表之间的关系有哪三种关系(数据库中表之间存在着三种关系:一对一)

  • 为什么改不了群昵称(改不了群昵称是怎么回事)

    为什么改不了群昵称(改不了群昵称是怎么回事)

  • 激萌怎样用照片制作漫画头像(激萌怎么照相好看)

    激萌怎样用照片制作漫画头像(激萌怎么照相好看)

  • 影视tv怎么下载了进不去

    影视tv怎么下载了进不去

  • 华为荣耀v30手机怎么截屏(华为荣耀v30手机屏幕上没颜色了咋办呀)

    华为荣耀v30手机怎么截屏(华为荣耀v30手机屏幕上没颜色了咋办呀)

  • 华为mate30pro是什么材质(mate30pro主打什么)

    华为mate30pro是什么材质(mate30pro主打什么)

  • ipad air2可以插卡吗(ipad air2能不能插手机卡)

    ipad air2可以插卡吗(ipad air2能不能插手机卡)

  • 手机信号上hd什么意思(手机信号hd什么意思)

    手机信号上hd什么意思(手机信号hd什么意思)

  • 如何手动使用免拼卡(如何手动开启免流)

    如何手动使用免拼卡(如何手动开启免流)

  • 微信怎么拍圆形视频(微信如何拍原图)

    微信怎么拍圆形视频(微信如何拍原图)

  • 华为stftl10什么型号(华为stfal10价格)

    华为stftl10什么型号(华为stfal10价格)

  • oppok1关机键在哪里(oppo k5关机键)

    oppok1关机键在哪里(oppo k5关机键)

  • 12123怎么关闭手势密码(交管12123怎么取消手机绑定)

    12123怎么关闭手势密码(交管12123怎么取消手机绑定)

  • 苹果手机怎么看下载速度(苹果手机怎么看激活日期)

    苹果手机怎么看下载速度(苹果手机怎么看激活日期)

  • 在CAD中如何画点(cad怎样绘制点)

    在CAD中如何画点(cad怎样绘制点)

  • 怎么在抖音卖自己的产品(怎么在抖音卖自己的课程)

    怎么在抖音卖自己的产品(怎么在抖音卖自己的课程)

  • 竖屏锁定在哪里(华为的竖屏锁定在哪里)

    竖屏锁定在哪里(华为的竖屏锁定在哪里)

  • Hyper-V虚拟机中ReactOS系统无法联网详细图文解决办法(hyper-v虚拟机中重置虚拟机是什么意思)

    Hyper-V虚拟机中ReactOS系统无法联网详细图文解决办法(hyper-v虚拟机中重置虚拟机是什么意思)

  • 附加税做账交多了如何冲回
  • 销售软件系统退货怎么退
  • 对外投资应由
  • 支付企业所得税会计科目
  • 固定资产折旧方法年数总和法
  • 税务申报指的是什么
  • 上年多交的增值税能退吗
  • 家具厂投入多少钱
  • 新车检测费能入什么科目
  • 开具技术服务费发票需要注意什么
  • 出售专利权收入属于什么收入
  • 一般纳税人购入货物相关的增值税可以抵扣
  • 三证合一之后还有税务登记证吗
  • 企业出售房屋交什么税
  • 预缴税款的会计分录贷其他应付款
  • 营改增之后还有营业税金及附加吗
  • 增值税专用发票验票
  • 预收账款预提费用
  • 分支机构的季度所得税务报表是填合并报表吗
  • 质保金怎么挂账
  • 个税免缴款
  • linux CentOS WEB服务器分区方案
  • 一键ghost有用吗
  • android 设置按钮颜色
  • 奖励先进个人计划怎么写
  • 企业能公户往个人转账吗
  • Mtdacq.exe - Mtdacq是什么进程 有什么用
  • php完整教程
  • 盘亏固定资产累计折旧
  • php上传图片大小限制
  • 销售折扣增值税如何处理
  • php option
  • vue2+element-plus 密码校验及动态校验
  • 用php做计算
  • web期末大作业源代码
  • 理财收益如何计税
  • 资产负债表中其他流动资产包括哪些科目
  • 销项税的分录怎么做
  • 网络安全技术
  • 残保金的计费依据
  • 分期收款销售产品
  • 公司收到银行存款利息回单的会计分录
  • 工厂的污水处理站作用
  • PostgreSQL中使用dblink实现跨库查询的方法
  • 织梦商城网站源码
  • 亏损企业研发费用可以加计么
  • 建筑业 成本
  • 工会经费可以列支哪些项目
  • 定期定额纳税申报表计税依据怎么填
  • 未开票收入如何计提增值税
  • 应收贷方余额怎么处理
  • 利息收入和应收利息的区别
  • 取得房租发票的租赁费可以抵税吗
  • 预付卡发票如何做分录
  • 出租车票单张限额
  • 可抵扣的税票
  • 借别人的承兑后期还现钱可以吗?
  • 什么是备查账
  • linux下apache、mysql、php安装配置详细笔记
  • sql server数据库版本
  • Navicat连接MySQL报错
  • windows2003怎么开启远程
  • win8windows设置在哪里
  • ubuntu系统如何安装
  • 如何在win7系统中查看系统信息
  • windows8.
  • mac uuid查询
  • Win7系统打开D盘文件后怎么没有后退箭头
  • win7系统出现问题怎么修复
  • win8安装应用商店
  • linux curl命令使用
  • JAVA的OPENGL,JOGL入门实例----碰撞移动的正方体 (配置+源代码)
  • Nodejs+Socket.io实现通讯实例代码
  • javascript如何
  • 详细解读了
  • javascript初学者书籍
  • 深入理解新发展理念
  • jQuery Easyui Datagrid实现单行的上移下移及保存移动的结果
  • python 字符 字符串
  • 资源税原矿和选矿的区别
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设