我在调用ajax请求时遇到了一个愚蠢的错误,当我在浏览器中打开Ajax的URL时,也会遇到相同的错误。
我已经参加了2个月了。 我删除了 .htaccess ,但没有任何改变。 这仅在本地环境中发生,而不在生产中发生。
我尝试添加
zlib.output_compression = On;
到我的 php.ini ,但没有进行任何更改。
我正在使用Opencart 2.2.0.0 | PHP 5.6 | Ubuntu LAMP
更新1
这是通过ajax调用的代码:-
如果我添加 print_r($ data); ,它会打印数据数组,但是当它尝试返回视图文件的渲染内容时出现了问题,我试图创建另一个视图文件但得到了相同的答复。
更新2
这是来自devTools>网络标签的请求:-
,并且“响应”选项卡为空,没有返回响应。
更新3
答案 0 :(得分:1)
“ <”通常表示您正在尝试对html进行json解码。您是否检查过devtools并查看服务器实际上返回了什么?
当对json-data的请求返回了html格式的错误消息,或者当请求的用户尚未登录并且Ajax调用(错误地)重定向到登录屏幕时,我自己看到了这种情况。
答案 1 :(得分:1)
以我的经验,当出现php错误并打开压缩功能时,会出现此错误。转到管理>系统>设置,然后转到服务器标签,并将输出压缩级别设置为 0 。另外,还要确保将显示错误设置为开启。
现在检查您的Ajax调用的响应,而不是解码错误,您将能够看到正在报告的实际错误。
还请记住,如果这是一个致命错误,脚本甚至有机会初始化自定义错误处理程序之前,脚本可能会崩溃,并且获取有关这些数据的唯一方法是在网络服务器错误日志中。