Javascript 用PHP检索上传的Blob

Javascript 用PHP检索上传的Blob,javascript,php,ajax,html,xmlhttprequest,Javascript,Php,Ajax,Html,Xmlhttprequest,我有一个创建blob并将其发布到PHP文件的脚本。这是我的密码: HTML/Javascript: <script type="text/javascript"> function upload() { var data = new FormData(); data.append('user', 'person'); var oReq = new XMLHttpRequest(); oReq.open("POST", 'upload.php

我有一个创建blob并将其发布到PHP文件的脚本。这是我的密码:

HTML/Javascript:

<script type="text/javascript">
    function upload() {

    var data = new FormData();
    data.append('user', 'person');

    var oReq = new XMLHttpRequest();
    oReq.open("POST", 'upload.php', true);
    oReq.onload = function (oEvent) {
      // Uploaded.
    };

    var blob = new Blob(['abc123'], {type: 'text/plain'});

    oReq.send(blob);
}
</script>

<button type="button" onclick="upload()">Click Me!</button>
<?php
var_dump($_POST);
?>

函数上传(){
var data=new FormData();
data.append('user','person');
var oReq=新的XMLHttpRequest();
open(“POST”,“upload.php”,true);
oReq.onload=功能(oEvent){
//上传。
};
var blob=new blob(['abc123'],{type:'text/plain'});
发送(blob);
}
点击我!
PHP:

<script type="text/javascript">
    function upload() {

    var data = new FormData();
    data.append('user', 'person');

    var oReq = new XMLHttpRequest();
    oReq.open("POST", 'upload.php', true);
    oReq.onload = function (oEvent) {
      // Uploaded.
    };

    var blob = new Blob(['abc123'], {type: 'text/plain'});

    oReq.send(blob);
}
</script>

<button type="button" onclick="upload()">Click Me!</button>
<?php
var_dump($_POST);
?>

当我查看开发人员控制台时,我的PHP页面上没有任何$u POST数据。我需要知道如何检索正在发布到PHP脚本的文本文件


非常感谢您的帮助

可以从
php://input
,如中所示

<?php
var_dump(file_get_contents('php://input'));

将Blob附加到FormData并发送。

感谢您提供上述代码。我知道在开发者控制台中可以看到文件“string(6)”abc123“的内容。如何通过
$\u文件
数组访问blob?我用
oReq.setRequestHeader(“内容类型”、“多部分/表单数据”)更新了javascript此选项,但它仍然不允许我通过
$\u文件
数组访问blob。有什么建议吗?您必须使用FormData对象并将blob附加到其中,然后将FormData对象传递到
XMLHttpRequest.send
。我对PHP很在行,但对javascript不在行。您介意在您的答案中更新您的代码以包含您提到的FormData方法吗?非常感谢!我现在可以访问它了!最后一个问题。我如何知道将这个blob(指实际的.txt文件)保存在服务器上的“text”目录中?更清楚地说,如何将这个blob转换成实际的文本文件?请看一下通过post上传文件的php手册