相关疑难解决方法(0)

在Google Chrome扩展程序中上传文件

我正在为Chrome编写扩展程序,我需要将用户当前所在页面上的文件上传到我的服务器进行处理,但我无法弄清楚如何上传文件.我认为只是将链接传递给服务器并让服务器下载文件,但是如果站点需要身份验证,这将无法正常工作.是否可以通过Chrome扩展程序将文件上传到我的服务器?

upload google-chrome-extension

28
推荐指数
2
解决办法
2万
查看次数

jQuery相当于XMLHttpRequest的上传?

使用HTML5的File API,上传是通过uploadXMLHttpRequest.中调用的对象进行的.是我正在使用的教程(以及Google缓存镜像,因为它现在已经关闭).这是相关部分:

// Uploading - for Firefox, Google Chrome and Safari
xhr = new XMLHttpRequest();

// Update progress bar
xhr.upload.addEventListener("progress", function (evt) {
Run Code Online (Sandbox Code Playgroud)

如您所见,为了跟踪上传进度,该XMLHttpRequest对象有一个名为的属性upload,我们可以添加一个事件处理程序.

我的问题是:jQuery是一个等价的吗?.我试图让代码尽可能干净,并且尽可能地跨浏览器兼容,因为每当微软认为这是一个好主意时(尽管听起来会像2012年或2013年那样).

javascript ajax upload jquery

10
推荐指数
1
解决办法
1万
查看次数

Javascript XHR发送multipart/form-data

我正在尝试发送multipart/form-data内容类型请求:

var xhr = new XMLHttpRequest();

xhr.onreadystatechange = function(){
    if(xhr.readyState==4){
         alert(xhr.responseText);
    }
}

xhr.open("POST", url, true);
xhr.setRequestHeader("Content-Type","multipart/form-data; boundary=---------------------------275932272513031");

xhr.send('-----------------------------275932272513031 Content-Disposition: form-data; name="name"

test

----------------------------275932272513031--');
Run Code Online (Sandbox Code Playgroud)

然后在php我只打印$_POST数组

print_r($_POST);
Run Code Online (Sandbox Code Playgroud)

但我每次都得到一个空数组.我希望看到

Array (
    name => "test"
)
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?

javascript multipartform-data xmlhttprequest

5
推荐指数
1
解决办法
2万
查看次数