Javascript 如何将图像从SimpleHTTPServer存储到我的计算机?

Javascript 如何将图像从SimpleHTTPServer存储到我的计算机?,javascript,html,simplehttpserver,Javascript,Html,Simplehttpserver,我使用SimpleHTTPServer提供目录服务,并在本地运行html代码。在那里,我使用getusermedia api拍摄了一些照片。如果我使用js localstorage来存储图片,它们确切地存储在哪里?如何将它们复制到已知目录?浏览器通常在一个加密的、完全私有的区域中管理本地存储和会话存储变量,以便您的浏览体验尽可能安全—想象一下,如果您可以在某人访问您的网页时读写他们的文件 在客户端不知道的情况下,无法将图像复制到客户端计算机或从客户端计算机复制图像。但是,您可以在服务器端进行自动

我使用SimpleHTTPServer提供目录服务,并在本地运行html代码。在那里,我使用getusermedia api拍摄了一些照片。如果我使用js localstorage来存储图片,它们确切地存储在哪里?如何将它们复制到已知目录?

浏览器通常在一个加密的、完全私有的区域中管理本地存储和会话存储变量,以便您的浏览体验尽可能安全—想象一下,如果您可以在某人访问您的网页时读写他们的文件

在客户端不知道的情况下,无法将图像复制到客户端计算机或从客户端计算机复制图像。但是,您可以在服务器端进行自动下载

关于保存以前下载的图像,请参阅:

但是,请注意,最大存储空间通常是有上限的,不同浏览器及其相关环境的大小差异很大

我自己的测试表明Chromium默认只支持10x5MB文件

编辑:

至于复制到已知目录,您必须将文件发送回http服务器并从那里收集它们。如果愿意,您可以使用ajax,通过将数据转换为base64,使您能够以json字符串“数据编码失败将导致错误”的形式发送数据,并使用新的Bufferstr base64.toStringbinary在服务器端进行收集

var http = require('http'),
cluster = require('cluster'),
path = require('path')
url = require('url')
util = require('util')

function posthandler(request,response){
    if(request.url=="/image_streamer"){
         var datum = [];
         request.on('data',function(d){datum.push(d);});
         request.on('end',function(){
             datum = JSON.parse(datum.join("").toString('utf8'));
             datum.image = new Buffer(datum.image,"base64");
             // datum.image NOW POINTS TO A BINARY BUFFER :) HAPPY DAYS.
         });
    }
}

var server = http.createServer(function(request,response){
    switch(request.method){
         case: "GET":{} break;
         case: "POST":{posthandler(request,response);} break;
    };
}).listen(8080);

非常感谢。第一部分看起来很简单!至于第二个,如果我使用的是SimpleHTTPServer,那么我能做所有这些吗?它似乎不可能,将进行编辑以包含一个小片段