【发布时间】:2019-02-27 06:59:02
【问题描述】:
如果我们有一个包含 HTML、Css 和 Nodejs 作为后端的响应式网站,我们可以让它像 PWA 应用程序一样运行吗? - 我知道Service-worker文件的区别,但我想知道它是确切的区别吗?
【问题讨论】:
-
是的,PWA 只是一个添加了一些额外内容的网站(无论是否响应)
标签: node.js progressive-web-apps
如果我们有一个包含 HTML、Css 和 Nodejs 作为后端的响应式网站,我们可以让它像 PWA 应用程序一样运行吗? - 我知道Service-worker文件的区别,但我想知道它是确切的区别吗?
【问题讨论】:
标签: node.js progressive-web-apps
这里是PWA(Progressive Web Application) and RWD(Responsive Web Design)的区别:
PWA
用户通过任何浏览器访问网站,并在受支持的 浏览器(Chrome、Firefox、Safari 甚至 Edge!)它会询问用户是否 他们想将网络应用程序安装到他们的主屏幕上。这让用户 下载并将网站存储在他们的设备上(然后获取 在后台使用 Service Worker 进行更新)。
RWD
响应式网页设计(RWD)基本上是指 设计一个可以使用您可能使用的任何技术访问的网站 用来建站。 RWD 允许网站功能齐全 (并且看起来不错)无论用户面前的屏幕尺寸如何 他们。自 2001 年奥迪推出第一个 记录在案的响应式网站。
因此,PWA 和 RWD 并不是创建网站的两种独立方式 — 事实上,PWA 几乎肯定会利用 RWD。p>
以下是一些提示:
最佳解决方案是为您的特定网站选择最佳解决方案。如果您希望最大限度地利用这些类似应用的功能(例如轻松访问主屏幕应用、离线使用以及高质量的全屏功能),您可能需要选择 PWA。
如果您希望为大多数用户最大限度地提高网站速度和可访问性,RWD 可能是更好的选择。
【讨论】:
如果你问是否可以在没有服务工作者的情况下制作 PWA,那么我相信你不能,因为它(服务工作者)和 manifest.json 文件都是将应用程序保存到主屏幕所必需的。
为了让用户能够安装您的 Progressive Web App,它需要满足以下条件:
该网络应用尚未安装。
- prefer_related_applications 不正确。
满足用户参与启发式(当前,用户已与域交互至少 30 秒)
包含一个 Web 应用清单,其中包括:
- 短名称或名称
- 图标必须包含 192px 和 512px 大小的图标
- start_url
- 显示必须是以下之一:全屏、独立或最小用户界面
- 通过 HTTPS 提供服务(服务人员需要)
- 已向 fetch 事件处理程序注册了服务工作者
【讨论】: