程序员

理应被广泛了解却鲜有人知的8个浏览器API

作者:admin 2021-09-18 我要评论

如今,很少有不使用API的web应用程序了。API目前广受欢迎,浏览器开始为复杂的功能提供API(ApplicationsProgramming Interface,应用程序接口),而这些功能有时...

在说正事之前,我要推荐一个福利:你还在原价购买阿里云、腾讯云、华为云服务器吗?那太亏啦!来这里,新购、升级、续费都打折,能够为您省60%的钱呢!2核4G企业级云服务器低至69元/年,点击进去看看吧>>>)

如今,很少有不使用API的web应用程序了。API目前广受欢迎,浏览器开始为复杂的功能提供API(ApplicationsProgramming Interface,应用程序接口),而这些功能有时只能通过本机应用程序实现。

随着web开发领域不断发展,浏览器厂商也在加紧跟上步伐。它们不断开发新的API,为web应用程序带来新的本地类功能。虽然一些API已经在现代浏览器中得到了充分支持,但人们对它们还是不太了解。下面这些API会在未来发挥重要作用,是时候认识他们啦!

Web Locks API

这个API允许你在多个标签页上运行web应用程序,以访问协调共享资源。虽然这种情况并不常见,但在高级用例中,开发人员需要运行web应用程序的多个浏览器标签页并保持它们同步,此时该API可以派上用场。

虽然 API (如Shared Worker、Broadcast Channel、local Storage、session Storage、post Message、unload handler)可以用来管理制表符通信和同步,但它们都有缺点,需要开发人员进行变通,而这会导致代码可维护性的降低。Web Locks API试图通过引入更标准化的解决方案来简化这个过程。

该API在Chrome 69中是默认启用的,但仍然没有得到Firefox和Safari等主流浏览器的支持。请注意,使用这个API时,你应该掌握如何处理类似“死锁”的问题,避免落入其中。

支付请求API(The Payment Request API)

支付请求API帮助客户和卖家更加无缝完成结账过程。这种新方法无需支付表单,从根本上改善了用户支付体验。由于该API支持Apple Pay和Google Pay,它将有望成为电子商务领域的主要组成部分。

此外,由于凭证是在浏览器中管理的,用户可以更容易从移动浏览器切换到桌面浏览器,并且仍然可以访问他们的卡片信息。用户还可以从商家端进行定制,只需提及商户支持的支付方式和银行卡信息,该API甚至可以根据送货地址提供送货选项。

页面可见性API(The Page Visibility API)

在电脑浏览器中同时要打开20多个标签页是很常见的事情,笔者有朋友曾经在修复一个bug后关闭了100多个标签页。浏览器甚至已经开始出现了对标签页按照特征进行分组管理的功能,使标签页更有条理。

在页面可见性API的帮助下,你可以检测web页面是否空闲。换句话说,你可以知道用户是否正在查看包含你web页面的标签页。这听起来不足为奇,但它大大提升了用户使用网站的体验度。以下是几个可以使用该API的例子:

· 当浏览器标签处于非活动状态时,下载应用程序包资源和媒体资源的剩余部分,这将帮助您高效利用空闲时间。

· 当用户最小化或切换到另一个标签页时暂停视频。

· 当标签页处于非活动状态时,暂停图片轮播。

尽管开发人员过去使用过blur 和 focus等事件,但它们并没有告诉用户你的页面是否真的被隐藏了,页面可见性API帮助解决了这个问题。此外,该浏览器API与大部分浏览器兼容。

来源:MDNDocs

基于图形检测API(The Shape Detection API)

web开发人员可能遇到过许多需要安装外部库来处理图像中面孔、文本和条形码等元素检测的情况,这是因为之前还没有可供开发人员使用的web标准API。

Chrome团队正试图通过在Chrome浏览器中提供一个实验性基于图形检测API来改变这一现状,使其成为web标准。目前该API还处于试验阶段,您可在 chrome://flags中启用 #enable-experimental-web-platform-features 进行本地访问。

Web分享API (The Web Share API)

Web分享API允许你以与本机应用程序相同的方式将链接、文本、文件共享到设备上的其他应用程序,有助于提高用户对web应用程序的参与度。从2020年年中开始,这个API只能在Safari和Android的Chromium分支上运行。

本机共享接口

消息推送API(The Push API)

消息推送API允许web应用程序从服务器接收推送到它们的消息,不管应用程序是否处于前台。即使应用程序没有在浏览器上加载它也可以工作,这使得开发人员能够及时地向用户交付异步通知。要实现这一点,应该在使用API之前获得用户权限。

Cookie存储API(The Cookie Store API)

众所周知,使用cookie有点慢,因为它是同步的。但Cookie 存储API实现了对HTTP cookies的异步访问,有时也被称为异步Cookie API。此外,该API还向服务工作者公开这些HTTP cookies。尽管有帮助库来辅助所有常见的cookie操作,但有了Cookie存储API,这些操作会更容易,也更高效。

Web分享目标API(The Web Share Target API)

通过在web表单中提供类似于应用程序的体验,web应用程序正在改变我们理解应用程序的方式。根据StateOfJS网站的数据,约48.2%的用户使用过PWAs(Progressive Web Apps,渐进式Web应用), 另有45.5%的用户知道PWAs,足以见得PWAs受众之广。

尽管PWAs有许多类似于本机的特性,但它们缺少从本机应用程序接收文件的途径。这个API实现了从其他本机应用程序接收链接、文本、文件,目前该API只能在Android系统Chrome 76及以上版本浏览器使用。

这些API都是非常“酷炫”的。缺乏主流浏览器支持是这些API的唯一不足之处,这意味着在生产中使用这些API并不容易。但我敢肯定,它们将在未来浏览器与web的开发中发挥关键作用。

本文转载自微信公众号「读芯术」,可以通过以下二维码关注。转载本文请联系读芯术公众号。


本文转载自网络,原文链接:https://mp.weixin.qq.com/s/V7InMKueHetsuF0DPDcTNA

版权声明:本文转载自网络,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。本站转载出于传播更多优秀技术知识之目的,如有侵权请联系QQ/微信:153890879删除

相关文章
  • 理应被广泛了解却鲜有人知的8个浏览器A

    理应被广泛了解却鲜有人知的8个浏览器A

  • Windows Defender 垃圾?可能只是你不

    Windows Defender 垃圾?可能只是你不

  • Google Chrome加入密码泄露检查功能 支

    Google Chrome加入密码泄露检查功能 支

  • 华为鸿蒙OS即将迎来升级 手机版本或仍

    华为鸿蒙OS即将迎来升级 手机版本或仍

腾讯云代理商
海外云服务器