Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/230.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 谷歌浏览器的Ajax上传文件错误?_Php_Javascript - Fatal编程技术网

Php 谷歌浏览器的Ajax上传文件错误?

Php 谷歌浏览器的Ajax上传文件错误?,php,javascript,Php,Javascript,我在我的web应用程序中使用noswfupload(ajax上传器),它在Firefox和IE上运行良好,但在googlechrome上不起作用。我发现一个错误,显示“PHP警告:多部分/表单数据中缺少边界发布第0行中未知的数据” 有人能告诉我如何解决这个问题吗?不确定您的具体上传程序,但是: 此错误是xhr请求头的设置方式以及请求数据的问题。有效语法(从我的chrome调试控制台)如下所示: 请求标头: Content-Type:multipart/form-data; boundary=--

我在我的web应用程序中使用noswfupload(ajax上传器),它在Firefox和IE上运行良好,但在googlechrome上不起作用。我发现一个错误,显示“PHP警告:多部分/表单数据中缺少边界发布第0行中未知的数据”


有人能告诉我如何解决这个问题吗?

不确定您的具体上传程序,但是:

此错误是xhr请求头的设置方式以及请求数据的问题。有效语法(从我的chrome调试控制台)如下所示:

请求标头:

Content-Type:multipart/form-data; boundary=----WebKitFormBoundarykEVXyg09HZBMzplL
请求数据:

------WebKitFormBoundarykEVXyg09HZBMzplL
Content-Disposition: form-data; name="foo_bar"

data:image/jpeg;base64,/9j/4AAQSkZJ
     [....]
pAkhCD/9k=
------WebKitFormBoundarykEVXyg09HZBMzplL--
您可以在这里看到http rfc:,它在标题中提到了边界语法

您可以手动更改标题,如以下答案所示:,也可以尝试在更高级别上解决它

formData对象也可以模拟这些参数(尽管并非在所有浏览器中都实现)


我在jquery ajax调用php文件时遇到了一个问题(有相同的错误),通过放弃jquery并使用formData和原始HttpXhreQuest解决了这个问题。

看起来库有一个错误,它没有正确格式化请求。那个库里有bug追踪器吗?没有!!我在错误日志文件中发现了一个错误。如果它在Google Chrome中不起作用,那么它可能在Safari中也不起作用。您使用这个框架而不是使用对象有什么原因吗?我可以自定义它,并使用它的事件和对象轻松地与我的web应用程序集成,也不需要任何其他框架,如jQuery或mootools。我正在尝试修复它:)