我正在尝试按照以下方式在Windows 8平板电脑上传文件
var uri = new Windows.Foundation.Uri( uriString );
var uploader = new Windows.Networking.BackgroundTransfer.BackgroundUploader();
uploader.method = "POST";
uploader.setRequestHeader( "file", file.name );
uploader.setRequestHeader( "Content-Type", "multipart/form-data" );
upload = uploader.createUpload( uri, file );
我 我正在调用用PHP编写的服务器脚本,如下所示
<?php
if ($_FILES["file"]["error"] > 0) {
echo "Error: " . $_FILES["file"]["error"] . "<br>";
} else {
echo "Upload: " . $_FILES["file"]["name"] . "<br>";
echo "Type: " . $_FILES["file"]["type"] . "<br>";
echo "Size: " . ($_FILES["file"]["size"] / 1024) . " kB<br>";
echo "Stored in: " . $_FILES["file"]["tmp_name"];
}
?>
但是当我在Windows 8中执行代码时,它显示我跟随错误
Notice: Undefined index: file in upload.php
这种情况正在发生,因为我在设置请求标头uploader.setRequestHeader
时遗漏了一些错误,所以任何人都可以告诉我应该设置哪些请求标头以使其正常工作。
答案 0 :(得分:0)
我也试图解决这个问题,因为我正在调用我的php文件,但我无法获取该文件。 无论如何,你必须使用另一个功能才能使其正常工作
upload .startAsync().then(
function succes(resultat) {
console.log('file uploaded');
},
function erreur(resultat) {
console.log('there is an error');
},
function progression(resultat) {
var pourcentage = Math.round(resultat.progress.bytesSent * 100 / resultat.progress.totalBytesToSend);
console.log(pourcentage + ' %');
}
);
如果你发现如何让php工作,请告诉我!