我有一个脚本,正在创建一个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:
<?PHP var_dump($_POST); ?>
当我查看我的开发人员控制台时,我的PHP页面上没有获得任何$_POST数据.我需要知道如何检索发布到PHP脚本的文本文件.
任何帮助是极大的赞赏!
解决方法
来自blob的数据可以从PHP:// input中读取,如下所示
<?PHP var_dump(file_get_contents('PHP://input'));
但是,如果您想要使用表单数据对象发送多个数据,那么它就像一个普通的multipart / form-data帖子.所有字符串都可以通过$_POST获得,所有blob和文件都可以通过$_FILES获得.
function upload() { var data = new FormData(); var oReq = new XMLHttpRequest(); oReq.open("POST",{type: 'text/plain'}); data.append('file',blob); oReq.send(data); }