【发布时间】:2014-01-06 08:51:38
【问题描述】:
我有一个从canvas.toDataURL() 生成大约 250 张图像的脚本。
我的问题是如何一次保存它们(向服务器发出一个请求)而不是单独发布它们。
我需要一种方法将它们打包到单个请求中,然后将它们发送到 PHP 服务器进行解包。
【问题讨论】:
-
您可能编写的任何代码。请给我们看!
标签: javascript html html5-canvas
我有一个从canvas.toDataURL() 生成大约 250 张图像的脚本。
我的问题是如何一次保存它们(向服务器发出一个请求)而不是单独发布它们。
我需要一种方法将它们打包到单个请求中,然后将它们发送到 PHP 服务器进行解包。
【问题讨论】:
标签: javascript html html5-canvas
canvas.toDataURL() 给出以 base64 编码的字节数据,它们可以安全地用作字符串并通过 HTTP 传递。
做一些类似的事情:
var images = [];
while(....) {
images.push(canvas.toDataURL());
}
var imagesJson = JSON.stringify(images);
// pseudo code of jQuery ajax, you can make use of form and a hidden field
// or any other way you'd like to query the server
$.ajax({
....
send:{images:imagesJson}
....
});
用PHP(其他服务器端语言应该差不多):
$images = json_decode($_POST['images'], true);
foreach($images as $image) {
$image = base64_decode($image);
file_put_contents('<path to file>', $image);
}
【讨论】: