GM_download怎么下载自身请求的json
本帖最后由 player 于 2022-9-10 11:31 编辑let link = document.createElement('a');
link.download = 'config.json';
link.href = 'data:text/plain,' + JSON.stringify(data);
link.click();
用GM_download能实现这种效果吗,有必要用GM_download吗 ```
GM_download(URL.createObjectURL(new Blob()), 'config.json')
```
GM_download可以这么写
GM_download主要优势是可以跨域,只需要下载同源的话具体看你喜好吧 楼上正解
另外这种方式不太推荐
可以考虑使用filesave的库
之前写脚本根据实践click这种方式使用人群广了之后很容易出现点击不下载只弹出的问题
原因不明 这样就行:
```js
GM_download('data:text/plain,' + JSON.stringify(data), 'config.txt');
```
要下载为json格式,必须首先在油猴设置里将json格式加入下载白名单:
!(data/attachment/forum/202209/10/120923x5druygvjfcftdeq.png)
这样改成json后下载下来仍然会变成txt,原因是GM\_download会根据文件mine类型自动修改后缀,改成这样即可:
```js
GM_download('data:application/json,' + JSON.stringify(data), 'config.json');
```
GM\_download这个API其实挺蛋疼的,除了自动改后缀,设置不同的下载模式也会有不同表现,如果脚本要发布给别人用,别人改过设置就有可能得不到预期结果。当然GM\_download也有其优势,比如直接下载多个文件,原生方式很可能会被浏览器阻止。 cxxjackie 发表于 2022-9-10 12:21
这样就行:
```js
脚本猫哪里设置啊,没找到 cxxjackie 发表于 2022-9-10 12:21
这样就行:
```js
!(data/attachment/forum/202209/10/153352lqe0u0k55gw075hz.png)
我试了一下,脚本猫不用设置两种方式都可以。而且plain不用改json效果也一样。 player 发表于 2022-9-10 15:21
脚本猫哪里设置啊,没找到
tampermonkey的设置,脚本猫的实现逻辑不太一样。
页:
[1]