为了账号安全,请及时绑定邮箱和手机立即绑定

GET 请求中的 JSON 格式错误

GET 请求中的 JSON 格式错误

PHP
慕村9548890 2023-08-11 17:11:04
HTTP:retry我在使用(或任何其他方法)获取 JSON 文件时遇到一些问题。->body();当我执行此操作时,JSON 文件最终看起来如下图所示dd():我尝试使用 preg_replace 进行一些清理(但不太擅长正则表达式),似乎部分有效:preg_replace( "/\r|\n/", "", $data );因为 JSON 看起来像这样,所以不可能做到->json();它只是null在我然后dd()它时返回。我怎样才能正确地“清理”它,以便可以将结果作为普通的 JSON 文件进行访问?以下是文本输出(缺少换行符 (\n)):b"""{"devname":"Event Telt","devsn":"18940256","time":"14:54:53 2020-07-18","timeunix":"1595084093","synch":"1","ch1":{ "name":"Temp Dataskap", "unit":"°C", "aval":"19.1", "alarm":0},"ch2":{ "name":"Temp Rom", "unit":"°C", "aval":"17.4", "alarm":0},"ch3":{ "name":"Fukt Rom", "unit":"%RH", "aval":"77.0", "alarm":1},"ch4":{ "name":"Channel 4", "unit":"", "aval":"n/a", "alarm":0},"ch5":{ "name":"Channel 5", "unit":"", "aval":"n/a", "alarm":0}}"""
查看完整描述

1 回答

?
潇湘沐

TA贡献1816条经验 获得超6个赞

问题似乎是格式错误的 UTF-8 或其他问题

它是用这个简单的 oneliner 修复的:mb_convert_encoding($temps->body(), 'UTF-8', 'UTF-8')

转储中的特殊字符和奇怪的插件似乎是 Laravel 在dd()

谢谢大家的建议!


查看完整回答
反对 回复 2023-08-11
  • 1 回答
  • 0 关注
  • 110 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信