V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
这是一个专门讨论 idea 的地方。

每个人的时间,资源是有限的,有的时候你或许能够想到很多 idea,但是由于现实的限制,却并不是所有的 idea 都能够成为现实。

那这个时候,不妨可以把那些 idea 分享出来,启发别人。
pheyer
V2EX  ›  奇思妙想

能否用 https 劫持做点另类的事

  •  
  •   pheyer · 2017-01-17 13:07:50 +08:00 · 2824 次点击
    这是一个创建于 2655 天前的主题,其中的信息可能已经有所发展或是发生改变。
    很久以前 Chrome 上的 Evernote 插件是可以直接保存网页正文到 Evernote 桌面版的,后来因为 Chrome 安全上的限制, Evernote 插件不再这样做了,代之以保存网页到服务器。

    旧方式:可以快速保存网页到本地,若干天集中同步一次到服务器即可——一次同步
    新方式:每次保存网页都要同步到服务器,速度慢,桌面版要再同步一次才能看到——很多次同步

    其实我喜欢以前的方式,因为感觉这样效率比较高一些,不必每次等同步完才能关网页,桌面版保存网页足够多时就会集中同步一下,这时候我可以做其他的事情。

    昨天很开心地用 ngnix 解决了本地前端跨域问题,突然有一个异想天开的方案:通过本地服务器中转实现 Chrome Evernote 插件保存网页到 Evernote 桌面版,突破 Chrome 文件安全限制。

    需要知道的一些前提:
    1. evernote 插件是通过 https(支持 HSTS)连接服务器的
    2. Reeder 和 Firefox 都可以直接保存网页到 Evernote 桌面版的,所以是有桌面 api 的
    3. 不修改 Chrome 上的 Evernote Web Clipper 插件达到目的

    方案:
    1. 本地建立一个 https 服务器(自签名证书),同时建立 dns 劫持让 evernote.com 指向 127.0.0.1
    2. 本地的 https 服务器创建 evernote 插件连接服务器的 api ,在其保存网页时将数据传输到本地服务器,本地服务器通过脚本调用 Evernote 桌面版的 api 将其保存到桌面版中。
    3. 桌面版同步前关掉 https 服务器和 dns 劫持,若干天同步一次即可

    有点像利用 https 劫持为自己做好事,我最好奇的是能不能这样用 https 劫持达到目的。

    略疯狂的一个想法,未必实现,就是想和大家探讨一下可行性,从讨论中应该也能收获很多
    5 条回复    2017-01-18 07:52:42 +08:00
    tony1016
        1
    tony1016  
       2017-01-17 13:20:05 +08:00
    依我看,你就用 firefox 得了呗
    Felldeadbird
        2
    Felldeadbird  
       2017-01-17 13:20:22 +08:00
    不用 DNS ,直接 HOSTS 指向本地,剩下就是写他的 API 接口了
    pheyer
        3
    pheyer  
    OP
       2017-01-17 14:19:11 +08:00
    @tony1016 以前这样试过,太卡太慢放弃了
    linbiaye
        4
    linbiaye  
       2017-01-18 07:19:46 +08:00
    劫持本机完全没有问题
    lslqtz
        5
    lslqtz  
       2017-01-18 07:52:42 +08:00 via iPhone
    没有问题 我给自己的游戏下载做加速 国外游戏没有备案无法使用 CDN 用 Hosts+Nginx 做了反向代理的简易客户端。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1002 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 20:39 · PVG 04:39 · LAX 13:39 · JFK 16:39
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.