我摸了个 Web 本地存储库,想请大佬们给些意见,呜呜呜!(pian star)

2021-04-23 10:50:51 +08:00
 akirarika

http://kurimudb.nito.ink/

年轻人的第一个开源库,好耶!

2095 次点击
所在节点    分享创造
11 条回复
linxinote
2021-04-23 11:59:37 +08:00
star
smallyu
2021-04-23 12:41:31 +08:00
存在隐私安全问题吗,很多网站对 cookies 的操作都比较谨慎,这个直接就不知道下层的操作了
oott123
2021-04-23 13:30:24 +08:00
萌还是挺萌的

就是你这换底层 driver 的时候上层 api 也变了(同步变异步),听起来就有点不科学
akirarika
2021-04-23 13:51:33 +08:00
@oott123 我也想过这个问题,可是因为 IndexedDB 是异步的,做不到同步,目前也没想到有什么好的办法((

我已经尽力把增删改都变成同步的了,查部分如果是 IndexedDB 的话还是只能异步……()
akirarika
2021-04-23 13:54:00 +08:00
@smallyu 只是对 cookie 的封装而已啦,不手动写 cookie 是不会做什么的,也可以自己写个 driver 来决定怎么操作 cookie (
abersheeran
2021-04-23 15:10:07 +08:00
@akirarika 不如全部设计成异步接口?在 JavaScript 里,同步改异步很简单,返回一个 promise 就行了。异步改同步就有点麻烦了,毕竟就单线程,不能阻塞。
akirarika
2021-04-23 15:32:23 +08:00
@abersheeran 其实旧版本是这样设计的,但别人觉得这样心智负担大(一个变成异步了的,外层所有用到它的地方都要加 await/async,而且要时时刻刻关注返回值是不是 promise,否则就拿不到真的值),我想想 emmmmmm,要不干脆给个选项算了,可以决定到底是使用同步 api 还是异步 api,如果是 IndexedDB 则必须使用异步 api (?)
abersheeran
2021-04-23 15:47:46 +08:00
@akirarika 那也可以这么设计:基于 IndexedDB 的操作是全异步操作,其他都是同步的。

很忌讳同一个模式下操作同一个东西,一会儿同步一会儿异步。
Stain5
2021-04-25 19:19:21 +08:00
@smallyu 一共也就几百行代码,简单点花几十秒扫一遍看看有没有用到联网的 API 就基本安全了
Stain5
2021-04-25 19:24:04 +08:00
@smallyu 还有 eval 啥的
timedivision
2021-04-28 14:44:21 +08:00
把整个文档看完了,然后点了 star,感觉还挺易用的

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/772663

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX