【问题标题】:Error when attempting to parse xhr response text in fineUploader尝试在 FineUploader 中解析 xhr 响应文本时出错
【发布时间】:2023-03-19 03:52:01
【问题描述】:

我现在支持这个精细的上传器版本 3.3.0,并将所有库集成到我的网站中,我认为上传可以正常工作,但是没有!我看到错误我的 javascript 控制台:

[FineUploader] Sending upload request for 0

[FineUploader] xhr - server response received for 0

[FineUploader] responseText = 

和错误萤火虫:

[FineUploader] 尝试解析 xhr 响应文本时出错(SyntaxError: JSON.parse: unexpected end of data)

行错误:jquery.fineuploader-3.3.0.min.js(line 148)

我使用参数:

$(document).ready(function () {
    $('#uploader').fineUploader({
    request: {
        endpoint: '/upload/'
      },
    classes: {
        success: 'alert alert-success',
        fail: 'alert alert-error'
         }, 
    text: {
        uploadButton: '<i class="icon-upload icon-white"></i> file target'
      },
       validation: {
      sizeLimit: 31457280 

      },             
    debug: true

    });
  });

如果我写 sizeLimit: 10485760 - 一切正常!文件上传完成。如果 write sizelimit: 31457280 文件没有上传到结束,进程中断到 2 或 3%。帮我!哪里有错误?请帮助我!

【问题讨论】:

  • 您是否在服务器端查找过错误?这很可能是你的问题。
  • 服务器端配置文件php.ini: file_uploads on post_max_size 1024M upload_max_filesize 200M max_file_uploads 200M 我检查了很多次
  • 我上传了几个文件没有问题。问题出在服务器端。您将需要仔细查看您的服务器端代码以找出问题所在。您看到的错误表明服务器端发生了错误。
  • 所以,好吧!它工作!非常感谢!

标签: fine-uploader


【解决方案1】:

以下日志消息:

尝试解析 xhr 响应文本时出错(SyntaxError: JSON.parse: unexpected end of data)

通常表示您的服务器未返回有效的 JSON 响应。这通常是由服务器端的意外错误引起的。请注意,您必须始终从服务器返回有效的 JSON 响应。如果您使用的是 IE9 或更早版本,请务必同时返回响应代码 200。

【讨论】:

  • 如果您解释了如何找出错误,这个答案会更有用。
  • 我不确定您所说的“追捕”是什么意思。也许你可以准确地解释你缺少什么。
  • 谢谢 - 所以,我现在遇到了类似的错误。我怀疑我没有得到有效的 JSON 响应,因为在控制台中我看到了 apache 索引页面的 html。那么,我该怎么办?如何获取有效的 JSON 响应?
  • 这个问题没有一个适用于所有人的答案。在您的情况下,听起来您甚至没有配置服务器端点。 "Getting Started" guide 将引导您完成 Fine Uploader 的设置,并以配置 PHP 服务器结束。
  • 再次感谢。嗯,这就是我一直用来配置的。我在服务器上的一个目录中运行npm install fine-uploader,按照“传统端点”的说明将文件移动到一个目录中,然后为上传指定一个目录。我给了目标文件夹 777 权限。我可以在控制台中看到它正在到达该目录。那么我错过了什么?我是否需要为该目标上传目录设置其他内容?
【解决方案2】:

我的脚本也遇到了同样的问题,该脚本可以在本地完美运行,但不能在服务器上运行。

我们需要确保的几点:

  1. 按照here 所述正确设置endpoint

  2. 确保脚本最初要上传文件的目录(在我的例子中是 example-advanced\uploads )是可写的。它应该有 777 权限。我在这里遇到了问题。

  3. max_file_upload_limit 应相应设置。

可能还有更多。但这些是我迄今为止所面临的少数。希望这会对某人有所帮助。

【讨论】:

    【解决方案3】:

    对于 Coldfusion 的人来说,这是解决我问题的代码

    <cfoutput>
    
    <cffile
    action       = "upload"
    fileField    = "QQFILE"
    destination  = "#application.OSSandbox#"
    accept       = "image/jpeg"
    nameConflict = "MakeUnique"
    result="imgUploadResult"
    />
    <cfset json = CreateObject("component", "#application.CFCRoot#.json2")> // custom code to create a json object
    <cfset dataset = json.encode(imgUploadResult,"array")>
    <cfset dataset = REReplace(dataset,'("recordcount")','"success": true, \1')>
    
    <cfcontent type="text/plain; charset=ISO-8859-1"><cfoutput>#dataset#</cfoutput>
    </cfoutput>
    

    【讨论】:

      猜你喜欢
      • 2021-10-17
      • 1970-01-01
      • 1970-01-01
      • 2016-05-05
      • 2017-09-12
      • 1970-01-01
      • 1970-01-01
      • 2013-05-31
      • 1970-01-01
      相关资源
      最近更新 更多