头部白癜风的治疗 https://m-mip.39.net/nk/mipso_4496036.html
引言
大约七年前,谷歌决定关闭谷歌阅读器,这是一个世界闻名且深受喜爱的RSS阅读器,我觉得从那时起,没有其他服务像它一样受到如此真诚的哀悼。我还记得,当我打开HTC一款小巧的Wildfire阅读器时,那种温暖的感觉。
当然,我尝试了Feedly和Inoreader以及许多其他的替代品,甚至在我的服务器上安装了微型RSS,但都没有什么感觉。多年以后,我也不再使用RSS了,而是从Twitter、HN或Reddit上获取新闻。
真是有些令人悲观。
所以我想也许是时候做一个我自己的RSS阅读器了,一个比其他阅读器更适合我个人需求的阅读器,也许这会让我恢复阅读RSS的好习惯。
过去的辉煌
一切都开始于几年前。
很明显,web将成为主导技术,因此我开始使用jQuery、添加CSS并创建了一个很小的HTML静态页面,该页面通过AJAX下载RSS内容,对其进行解析,并将标题显示在屏幕上。
我当时对极简主义很感兴趣,那个页面只显示了简短的新闻标题和漂亮清晰的排版。甚至为了添加另一个博客,我不得不编辑HTML源代码本身。
好的方面是RSS阅读器页面从来没有收集过任何个人信息,需要任何登录,并且非常容易使用。
完成RSS和Atom提要解析的简短函数,真是令人兴奋,因为真是简单!
一时间,越来越多的博客对我的读者来说变得遥不可及。原因是CORS(跨域)。
从另一个来源的客户端javascript获取RSS/Atomxml已经不可行。所以我编辑了HTML新闻页面来使用一些公共的CORS代理。
当这些语言开始消亡时,我自己用Go语言做了功能实现:
个人CORS代理和用于推送新闻的HTML文件的组合工作得很好,但是后来我慢慢地也放弃了这些努力。
当前现状
这些天来,看着老式的jQuery总感觉怪怪的,所以我使用React迅速地完成了一个单页面应用(SPA)。
我决定加一些功能,允许用户添加/删除提要,而不是强制他们编辑HTML代码;我还添加了一些动画,异步获取新闻,这样用户就不需要重新加载页面了。
我在笔记本电脑和手机上做了多轮测试,深深觉得,更简单,更直观的方式才是正确的。于是我做了一些努力:
抛弃使用JSX,直接在HTML中创建基础布局。使用template节点来定义动态添加元素的布局,比如新闻标题或提要列表中的条目。仅留下了一个屏幕,减少动画数量。我在想,如果我在十年前写,没有这么多花里胡哨的现代技术,这将如何实现。
你知道吗,即使没有框架,ES6也牛的一匹。
即使没有预处理器,CSS也牛的一匹。
有时,更简单的工具会产生更好的结果。
展望一下
由于每个人都在谈论进步的Web应用程序,我决定将项目改成PWA模式。我并不强硬,有Lighthouse和大量的文件。现在,即使在断网状态下,我也可以阅读最后一条缓存的新闻。
然而,如果该应用程序有一段时间没有使用,Webkit和Apple会默认清空本地的存储数据。那么用户不仅会丢失缓存的新闻,还会丢失宝贵的提要列表。
这当然很不爽,我找到了一个快捷的办法——提要列表序列化为URL。因此,如果你为标题页添加了书签,就能够使用获取到关联的提要。
此外,你可以在桌面上创建订阅源,将URL转换成
转载请注明地址:http://www.1xbbk.net/jwbfz/5311.html