控制台:SyntaxError:位置 0 处的 JSON 中的意外标记 < [重复]

Posted

技术标签:

【中文标题】控制台:SyntaxError:位置 0 处的 JSON 中的意外标记 < [重复]【英文标题】:Console: SyntaxError: Unexpected token < in JSON at position 0 [duplicate] 【发布时间】:2022-01-21 00:18:08 【问题描述】:

我正在尝试从 mysql 数据库中获取数据并显示它(由于错误,目前只是记录它)。

错误是: SyntaxError: 意外的标记

我的php代码连接数据库:

<?php

$conn = mysqli_connect('localhost', 'root', '', 'mywholeheart');

$sql = mysqli_query($conn, "SELECT * FROM `products`");

$result = mysqli_fetch_all($sql, MYSQLI_ASSOC);

exit(json_encode($result));

?>

我的 JS 代码有 fetch 请求:

fetch('server.php')
.then((res) => res.json())
.then(response => 
    console.log(response)
)
.catch(error => console.log(error));

几乎所有关于这个主题的视频或帖子都与拼写你要从中获取数据的地方有关,而我不是在努力解决这个问题。他们还建议将其记录为文本,但所做的只是显示我的 PHP 代码。

有谁知道我为什么会收到这个错误以及我将如何修复它? 我目前没有使用任何库或框架。

【问题讨论】:

exit(json_encode($result)); 替换为print_r(json_encode($result)); 并告诉我们会发生什么。 如果在浏览器中单独运行yourhost/server.php,结果如何? @masterguru 仍然出现同样的错误 @SoroushBgm 它出于某种奇怪的原因下载了 server.php 文件? 【参考方案1】:

您的服务器不执行.php 文件。它只是将其作为文本文件获取。 关于 &lt; 字符的错误说明,它实际上是 text 文件的第一个字符。 所以这才是真正的问题。

【讨论】:

我开始明白这一点,但我不明白如何解决这个问题。 @durellvicjardim: 检查你的服务器是否安装了 PHP,如果没有安装它

以上是关于控制台:SyntaxError:位置 0 处的 JSON 中的意外标记 < [重复]的主要内容,如果未能解决你的问题,请参考以下文章

Json Web 令牌 - jose4j - SyntaxError:JSON 中位置 0 的意外令牌 e

SyntaxError:JSON.parse (<anonymous>) 处的 JSON 输入意外结束

React: Uncaught SyntaxError: Unexpected token < in JSON at position 0

SyntaxError:JSON.parse 处的 JSON 输入意外结束 [重复]

DiscordJS + NodeJS:SyntaxError:JSON.parse 处的 JSON 输入意外结束(<anonymous>)

未捕获的 SyntaxError:JSON.parse (<anonymous>) 处的 JSON 输入意外结束