首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将图像从SimpleHTTPServer存储到我的计算机?

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

Stack Overflow用户
提问于 2017-10-15 21:09:28
回答 1查看 73关注 0票数 0

我使用SimpleHTTPServer在本地运行和运行一个目录和html代码。在那里,我使用getusermedia api来拍摄一些照片。如果我使用js本地存储存储图片,它们准确地存储在哪里?如何将它们复制到已知的目录中?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-10-15 21:21:31

浏览器通常在一个加密的、完全保密的区域管理localStorage和sessionStorage变量,这样您的浏览体验就会尽可能安全(想象一下,当有人访问您的网页时,您可以读写他们的文件!!)

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

至于保存先前下载的映像,请参见:

How to save an image to localStorage and display it on the next page?

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

我自己的测试表明,默认情况下,铬只能支持10x5MB文件。

编辑:

至于复制到一个已知的目录,您必须将文件发送回您的http服务器并从那里收集它们。如果您选择使用ajax,则可以将数据转换为base64,使您能够以json字符串发送数据(‘未能对数据进行编码将导致错误’),并在服务器端使用新缓冲区(str、“base64”).toString(“二进制”)收集数据。

代码语言:javascript
复制
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);
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46760022

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档