相关疑难解决方法(0)

在内存中创建一个文件供用户下载,而不是通过服务器

有没有办法在客户端创建文本文件并提示用户下载它,而不与服务器进行任何交互?我知道我不能直接写入他们的机器(安全性和所有),但是我可以创建并提示他们保存它吗?

javascript web-applications file client-side

775
推荐指数
17
解决办法
39万
查看次数

有没有办法在使用数据时指定建议的文件名:URI?

例如,如果您点击链接:

data:application/octet-stream;base64,SGVsbG8=

浏览器将提示您下载一个文件,该文件由超链接本身中作为base64保存的数据组成.有没有办法在标记中建议默认名称?如果没有,是否有JavaScript解决方案?

html javascript url save-as data-uri

216
推荐指数
10
解决办法
16万
查看次数

如何用Javascript打开本地磁盘文件?

我试着打开文件

window.open("file:///D:/Hello.txt");
Run Code Online (Sandbox Code Playgroud)

浏览器不允许以这种方式打开本地文件,可能是出于安全原因.我想在客户端使用该文件的数据.如何在Javascript中读取本地文件?

javascript

146
推荐指数
7
解决办法
44万
查看次数

如何生成并提示从客户端浏览器中的内容保存文件?

我有一种情况,我需要让我的用户选择将本地存储在客户端内存中的一些数据保存到磁盘.我目前的解决方法是拥有这样的处理程序

(define-handler (download-deck) ((deck :json))
  (setf (header-out :content-type) "application/json"
    (header-out :content-disposition) "attachment")
  deck)
Run Code Online (Sandbox Code Playgroud)

这完全是它的样子.客户端发送数据,并在本地保存返回的文件.

这看起来很愚蠢.

拜托,告诉我有一个更好的,更简单的,跨浏览器的方式,让客户以本地数据保存到硬盘的一个文件保存对话框.

我在这个主题上读到的每个答案都说"不,你不能用javascript保存文件"或"是的,Chrome API中有一个半文件化的部分,可能让你在三页中完成".

javascript file download save

24
推荐指数
2
解决办法
9万
查看次数

使用Javascript在本地保存HTML

我知道,出于安全原因,Javascript无法在文件系统中写入数据.我经常读到,用Javascript本地保存数据的唯一方法是使用cookies或localStorage.

但它是可能的,在非常特殊的情况下,当文件被访问本地(通过互联网而不是),将数据写入本地?(没有任何服务器语言,甚至根本没有任何服务器......只是本地浏览HTML文件)

例如,可以通过点击此页面上的SAVE实现 ...

... HTML文件被新内容覆盖了吗?(即按下SAVE时应更新本地 HTML文件).


在此输入图像描述


感谢Javascript,当本地访问HTML页面时,这可以保存文件吗?

注意:我希望能够以静默方式保存,而不是建议下载/保存对话框,用户必须在其中选择下载位置,然后"确定要覆盖"等.


编辑:为什么这个问题?我希望能够做一个HTML/JS记事本,我可以在没有任何服务器的情况下在本地运行(没有apache,没有php).我需要能够轻松保存,而无需处理对话框"你想在哪里下载文件?".

html javascript serialization

21
推荐指数
3
解决办法
5万
查看次数

从Blob保存到本地文件

我有一个棘手的问题,我现在已经有一段时间了.

我正在寻找一个解决方案,我可以在没有本地存储的情况下将文件保存到用户计算机,因为本地存储有5MB的限制.我想要"保存到文件"-dialog,但我想保存的数据只能在javascript中使用,我想阻止将数据发送回服务器,然后再次发送.

用例是,正在处理的服务是保存用户数据的压缩和加密块,因此服务器在这些块中没有知识,并且通过将数据发送回服务器,这将导致4倍的流量和服务器正在接收未加密的数据,这会使整个加密无效.

我找到了一个javascript函数,用"保存到文件"-dialog将数据保存到用户计算机,但是已经停止了这方面的工作并且不完全支持.就是这样:http://www.w3.org/TR/file-writer-api/

因为我没有window.saveAs,从Blob对象保存数据而不将所有内容发送到服务器的方法是什么?

如果我能得到一个提示,搜索什么,那将会很棒.

我知道这很有效,因为MEGA正在这样做,但我想要自己的解决方案:)

javascript blob client-side download

13
推荐指数
2
解决办法
3万
查看次数

如何从PouchDB导入/导出数据库

如何从本地PouchDB数据库导入/导出数据库?我需要保存我的本地数据库并在不同的平台上打开它.服务器端没有CouchDB.

javascript pouchdb

12
推荐指数
2
解决办法
5157
查看次数

11
推荐指数
1
解决办法
1万
查看次数

Javascript:: 导出到文本文件

<!DOCTYPE html>
<html>

<head>
    <title>&nbsp;</title>
    <meta charset=utf-8>
</head>

<body>

    <table>
        <tr>
            <th>A</th>
            <th>B</th>
            <th>C</th>
        </tr>
        <tr>
            <td>Line #1</td>
            <td>SLTD</td>
            <td>32</td>
        </tr>
        <tr>
            <td>Line #2</td>
            <td>MKTD</td>
            <td>68</td>
        </tr>
        <tr>
            <td>Line #3</td>
            <td>LRTD</td>
            <td>55</td>
        </tr>
        <tr>
            <td>Line #4</td>
            <td>HAD</td>
            <td>47</td>
        </tr>
    </table>

    <button>Export to text file</button>

    <script>
        var theFirstChilds = document.querySelectorAll('table tr td:first-of-type'), text, i;

        text = "";

        for (i = 0; i < theFirstChilds.length; ++i) {
            text = text + theFirstChilds[i].innerText;
        }

        console.log(text);

        var button = document.getElementsByTagName("button")[0];

        button.addEventListener("click", function() {
            //alert("I …
Run Code Online (Sandbox Code Playgroud)

html javascript export onclick button

8
推荐指数
1
解决办法
2万
查看次数

使用 safari (Macos) 录制音频似乎在 12 KHz 左右中断

我正在研究网络音频 API。我尝试使用 Web Audio API 录制音频文件,保存录制的块,然后使用 python matplotlib 绘制同一块的频谱。

播放的音频文件包含从 2KHz 到 20KHz 递增的频率。

chrome 的音频录制似乎是正确的,我可以通过音频频谱正确地看到它。

从 Chrome 录制的音频文件

但是当从 safari 录制音频时,12 Khz 之后似乎有一个截止滤波器。

从 Safari 录制的音频文件

单击按钮时调用 Web 音频代码函数 start_rec()

var samplerate = 48000;
var audio_engine_var = {};


var samples = {
    audio_samples: [],
    samplerate: samplerate
}

function start_rec() {
    audio_engine_var.context = new AudioContext({sampleRate:samplerate});
    navigator.mediaDevices.getUserMedia(
        { audio: {
            echoCancellation: false,
            sampleRate: 48000
        } }
    ).then( function (stream) {
        audio_engine_var.stream = stream;
        audio_engine_var.track = audio_engine_var.stream.getAudioTracks()[0];
        audio_engine_var.track.applyConstraints(
            {
                echoCancellation: false,
                sampleRate: 48000
            }
        );
        audio_engine_var.scriptProcessor = audio_engine_var.context.createScriptProcessor(1024, …
Run Code Online (Sandbox Code Playgroud)

safari audio web-audio-api

7
推荐指数
0
解决办法
211
查看次数