json - json 内容类型开头的奇怪字符

标签 json character

我正在尝试返回从 MySQL 服务器读取的 json 内容。这应该很容易,但是内容的开头不断出现一个“奇怪”的字符。

我有两个返回内容的页面:

  1. kcb433.sytes.net/as/test.php?json=true&limit=6&input=d

    这个 test.php 来自 Timothy Groves 写的一个脚本,它将数组转换为 json 输出

  2. http://kcb433.sytes.net/k.php?k=4

    这个应该也是一样的

我试图在这里验证它 jsonformatter.curiousconcept.com但只有第 1 页得到验证,第 2 页表示它不包含 JSON 数据。

直接访问两个页面都没有问题。那有什么区别,为什么两者都没有得到验证?

然后我找到了这个页面jsonformat.com并尝试了同样的事情。第 1 页正常,第 2 页不正常,但令人惊讶的是可以读取数据。一目了然,

{"a":"b"}

可能看起来不错,但前面有一个字符。

根据在线十六进制编辑器,这是上面字符串的值(而不是 9 个值,有 10 个):

-- 7B 22 61 22 3A 22 62  22 7D

第2页回显json的代码是:

header("Content-Type: application/json");
echo "{\"a\":\"b\"}";

最佳答案

您的k.php 文件有BOM signature开始时,再次使用无 BOM 的 UTF8 保存 k.php

关于json - json 内容类型开头的奇怪字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2475113/

相关文章:

jQuery JTable 分页不起作用

c - (C语言)检查字符串中的元音

c++ - 将单个字符转换为字符串?

c# - Ajax 函数不显示 JSON 日期列表 (Mvc5)

mysql - 从使用 MySQL _FETCH 设置的字符串中删除双引号的最佳方法是什么?

c# - Xamarin - 尝试读取 JSON 时出错

java - 如何创建值不是原始数据类型之一的 JSON 对象

c++ - 每个文件的末尾是否总是有一个换行符 (\n)?

c - 字符串的实现

Javascript - 标准化带重音的希腊字符