问题 Jquery文件上传器blueimp,意外的令牌/字符


首先让我告诉你,我已经找到了一些答案,虽然它帮了我一点,但我的主要问题仍然没有得到解决。

我使用了文件上传器(版本9.8.0)@ http://blueimp.github.io/jQuery-File-Upload/

(第1个问题)
在我开始上传之前,一切似乎都运行良好。完成上传后,它会为每个图像显示以下错误(而不是“上传成功”消息)。

在Google Chrome上,它说: “SyntaxError:意外的令牌<” 
关于Mozilla FireF。它说: “SyntaxError:JSON.parse:JSON数据第1行第1列的意外字符”

我搜索了一些解决方案,但我无法弄清楚如何应用这些解决方案。顺便说一句,它添加了图像,尽管有错误。


3229
2017-11-06 22:05


起源

请帮帮我,有人吗? - Jeremy23
我可以知道你使用的是哪个版本的php,ruby,node.js ............. - Bik
您能否显示您从服务器获得的回复或分享您的网址。 - Mitul


答案:


如果查看浏览器中的网络选项卡,您调用的方法是抛出一个带有html的错误页面(以<开头,并且无法在JSON中解析)。

例如在Google Chrome中:

  1. 打开调试器:F12
  2. 转到网络选项卡
  3. 上传
  4. 您应该会看到在“网络”选项卡中发送的请求
  5. 单击该错误请求
  6. 这将打开一个新窗口,其中包含服务器响应的选项卡。这种反应很可能是某种异常消息。

我在ASP.Net MVC上有一个类似的问题,当一个参数被发送为null并且它在控制器上不可为空时,它有一个不同的上传器。


11
2018-06-10 09:38



不明白为什么有人投票给你,因为这正是发生的事情:我的框架引发了一个HTML错误。 - qwertzman


SyntaxError:JSON.parse:JSON数据的第1行第1列的意外字符 看看这个SO,看看你的问题是否相关。
基本上,它可能意味着返回的成功消息没有正确的HTML标记,因此浏览器无法显示它们。


1
2018-06-04 03:49





你最有可能尝试 JSON.parse 服务器提供了错误消息或其他非JSON响应,这可能是HTML,给定它被阻塞的第一个字符。

我打开控制台,获取页面以产生错误,在开发工具的网络选项卡中找到请求,并检查上传请求的响应选项卡以查看实际返回的内容。

希望看到响应会引导您找到解决方案(如修复错误消息)或更具体的问题。


1
2018-06-10 00:49





我通过编辑url解决了这个问题 main.js 文件 index.php 最后,像这样:

// Initialize the jQuery File Upload widget:
$('#fileupload').fileupload({
    // Uncomment the following to send cross-domain cookies:
    //xhrFields: {withCredentials: true},
    url: 'imagegallery/server/php/index.php'
});

1
2017-08-24 10:54





这发生在我身上一次。也许这是文件夹权限。 我设置了server / php / files读写权限,并且可以正常工作。


0
2018-01-06 15:57





这是因为post_max_size和upload_max_filesize太小,并且因为它使用blob来发送文件数据,所以它会生成此错误。我已经在我的php.ini中增加了它们,现在就像一个魅力


0
2018-01-20 09:31





这也发生在我身上。我在Linux服务器上使用PHP。我发现在4或5个地方的代码中实际上有反斜杠“\”,它们导致了错误。做这个:

  1. 在编辑器中打开/server/php/UploadHandler.php的副本
  2. 搜索反斜杠:
  3. 注意反斜杠的每个位置。
  4. 如果它在单词“new”之后并且在调用处理程序之前就可以     删除反斜杠。

检查308,790,814,816,819,822,825,828,831,836,842,895,915,973,981和1058行。所有对Imagick()的调用;似乎在他们面前有一个。

我删除了所有这些反斜杠,不需要关闭错误报告。

例:

查找代码:

$file = new \stdClass();

用。。。来代替:

$file = new stdClass();

0
2017-08-22 18:34