V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
akirarika
V2EX  ›  分享创造

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

  •  
  •   akirarika · 2021-04-23 10:50:51 +08:00 · 2084 次点击
    这是一个创建于 1092 天前的主题,其中的信息可能已经有所发展或是发生改变。

    http://kurimudb.nito.ink/

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

    11 条回复    2021-04-28 14:44:21 +08:00
    linxinote
        1
    linxinote  
       2021-04-23 11:59:37 +08:00   ❤️ 1
    star
    smallyu
        2
    smallyu  
       2021-04-23 12:41:31 +08:00
    存在隐私安全问题吗,很多网站对 cookies 的操作都比较谨慎,这个直接就不知道下层的操作了
    oott123
        3
    oott123  
       2021-04-23 13:30:24 +08:00 via Android
    萌还是挺萌的

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

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

    很忌讳同一个模式下操作同一个东西,一会儿同步一会儿异步。
    Stain5
        9
    Stain5  
       2021-04-25 19:19:21 +08:00
    @smallyu 一共也就几百行代码,简单点花几十秒扫一遍看看有没有用到联网的 API 就基本安全了
    Stain5
        10
    Stain5  
       2021-04-25 19:24:04 +08:00
    @smallyu 还有 eval 啥的
    timedivision
        11
    timedivision  
       2021-04-28 14:44:21 +08:00
    把整个文档看完了,然后点了 star,感觉还挺易用的
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5288 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 37ms · UTC 07:48 · PVG 15:48 · LAX 00:48 · JFK 03:48
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.