[英]JS Byte Array to File on PHP Side
我有一个 Uint8Array,它在 Javascript 端有 10000 个字节。
var data = new Uint8Array(10000) ;
我想将它发送到 PHP 并用它创建一个文件:
$.ajax({
url:'saver.php',
type: 'POST',
contentType: 'application/octet-stream',
data:data,
processData: false
});
这个 ajax 正在发送数据(我在控制台的“请求有效负载”部分看到它)但是没有 $_POST 记录,$_POST 数组是空的,只是静默。 如何正确的抓住它?
这似乎是一种已知行为。 对于 10000 字节的数组,您应该能够使用
$rawPost = file_get_contents('php://input');
从请求中获取数据,而不是检查 $_POST 变量。
请注意,此方法将数据加载到内存中,因此如果数据过大,则会出错。
就我而言。 我从 JS 请求数组中获取二进制文件:Uint8Array 的 $file['content'] 格式。
<?php
$packed = pack("c*", ...$file['content']);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.