我有一个opencart商店。在本地,上传图像工作没有故障。在线,仅在图像非常小时才有效。如果我上传一张300kb的图像,上传旁边的加载gif会继续旋转,我会收到错误:
ajaxupload.js:
Line 609: if (response) {
Line 610: response = eval("(" + response + ")");
Line 611: } else {
Line 612: response = {};
Line 613: }
为什么会这样?
编辑: 我做了console.log(响应)而你是对的,回来的是404页面的HTML。但它怎么可能太大了?它可以在图像为100kb时工作,但如果图像为130kb则不工作。
为什么我被投票?
答案 0 :(得分:1)
您的帖子请求是404,因此响应不是可解析的JSON。您的网址在查询变量中看起来没有编码/
。请务必使用encodeURIComponent()
或其他一些功能来确保您的网址已正确转义
答案 1 :(得分:0)
从错误中我相信您的回复不是有效的JSON。
顺便说一句,eval是邪恶的,所以使用JSON.parse
您可以在此处查看您的JSON:http://jsonlint.com/
编辑:有人问为什么eval是邪恶的,所以这里有一些原因
如果您需要支持旧的IE版本,您也不需要使用eval()。您可以使用优秀的JSON库:https://github.com/douglascrockford/JSON-js
这将为您提供...... JSON.parse
对旧IE的支持。
答案 2 :(得分:-1)
尝试在错误之前重写该行..(不要复制并粘贴它)..有时工作