简单来说,Web API 并不等同于 REST API。
Web APIs指的是允许应用程序与网络或设备进行交互的接口。这个术语涵盖的内容很广泛,可以指浏览器API(例如WebRTC或地理位置API)或后端API(例如REST或GraphQL)。
另一方面,RESTful API 是一种特定类型的服务器 API,遵循 REST 原则,注重无状态性、基于资源的通信方式,并使用如 GET、POST 和 DELETE 这样的 HTTP 方法。
Web的演变过程最初,万维网最初被设计为一个静态的信息提供平台,用于连接个人到相关的资源,无论地点。然而,它已经发展成为更加互动和进步的,一些方面也变得更加去中心化。
本文主要讨论的是万维网变得更加进步和用户友好。
Web API 是现代 web 开发的支柱。借助 WebRTC、Web Bluetooth 和 Service Worker 等 API,开发人员可以创建高度互动且原生体验的应用程序,而无需外部插件。这些功能使得 渐进式 Web 应用 (PWA) 成为可能,从而弥补了 web 和原生应用之间的差距。
可以查看我关于渐进式 Web 应用的文章,了解更多。
https://dev.to/michellebuchiokonicha/how-to-get-started-with-progressive-web-apps-3f44
渐进式网页应用的好处
- 可在任何浏览器上运行(跨平台)
- 支持任何设备
- 无需网络连接即可使用
- 运行流畅,就像一个移动应用
- 安全性高
- 能在搜索引擎中被发现
- 提高用户的参与度
- 无需安装
- 可以通过链接分享
- 可选择在应用商店中上架(例如 Google Play 和 Apple Store)
在这里,Web API指的是浏览器API,它们充当浏览器功能的连接器、增强器和构建者。这些API内建于浏览器中,并非从库或网站购买的第三方API。相反,它们广泛可用,旨在改进网页并帮助开发者提升产品功能,减少重复代码并简化网页交互。
Web API的重要性在于,超过70%的在线活动是通过网络进行的,这突显了改进和扩展的必要性,以适应不断增长的在线活动。
总之,Web API 对渐进式 Web 应用的成功以及未来网页开发至关重要。它们是推动高级功能实现的关键。
项目弗ugu项目 Fugu 的命名来源于日语中的 河豚 一词,“fugu”。
起初,我对为什么这个项目以一种鱼命名感到好奇,直到我了解得更多。河豚是一种危险的鱼,当处理得当的时候它可以非常美味;然而,如果处理不当,它则可能造成危害。这个比喻恰当地反映了该项目旨在增强 web 平台的能力,使其与原生应用相媲美的目标。
这里头的关联是,Project Fugu 的 API 目标是让 web 更加丰富(就像“美味”一样),而如果准备不当,它们可能会引入严重的安全漏洞。假如我们创建了一个可供数十亿人使用的 API,但没有采取足够的安全措施,这将使人们面临各种安全风险。
您可以在 https://developer.chrome.com/docs/capabilities/fugu-showcase 了解更多关于 Project Fugu 及其 API 的内容。在这里,您可以找到一些使用 web API 构建的有趣且令人兴奋的项目,以及一个完整的 API 列表。许多之前网页无法使用的原生应用功能现在都可以通过 web API 使用了。
为什么用Web API呢?Web API非常重要,这一点决不能忽视。它们让浏览器变得更加强大,把网络从一个简单的内容浏览工具变成了一个强大的应用平台。通过WebRTC、WebSockets、Service Workers、Web Bluetooth和Web XR等技术,现在你可以在网络上做以前只能在原生应用中完成的事情。
为什么要开始使用Web API?Web API可以带来很多好处,比如:
访问设备原生功能: 它们允许你访问设备硬件,如相机、麦克风、各种传感器和蓝牙装置。这意味着你无需下载任何应用程序,就可以在浏览器中直接进行视频通话、操控机器人和体验增强现实。
离线和后台功能: 服务工作实现推送通知和缓存等功能,即使离线也能提升用户体验。
跨平台开发的简化: Web API(网络应用编程接口)让不同平台的开发变得更简单。
Web API怎样让Web更棒
Web API将原生应用的功能带到了网页,提供了无需安装或下载即可访问的强大功能。它们还有助于使网页保持对未来技术的兼容性;随着浏览器的发展,将开发出更多API以实现无缝集成。此外,Web API可以在多种平台上通用。
Web API容易上手吗?是的,这很简单。大多数 web API 已经被集成到浏览器中,并且有强大的文档支持。因为很多 API 本身就是浏览器自带的,因此不需要第三方库或安装。这使得开始使用它们变得简单、一致且跨平台。
一些Web接口Web API是渐进式Web应用(PWA)革命的基石,它们构成了增强网络功能的核心。它们代表了网络开发的未来。有许多Web API可用,您可以在MDN文档或web.dev上找到一个全面的列表。以下是一些常见的Web API,帮助您了解它们的工作方式。您可以在MDN文档、web.dev或项目fugu的文档中找到更多这样的API。
WebRTC API : 允许浏览器之间直接交换实时音频、视频和数据,而无需外部插件。它常用于在线视频会议和点对点文件共享。
Web蓝牙API : 允许网站与支持蓝牙的设备(例如健身追踪器、医疗设备和物联网设备)交流。
WebXR API :支持沉浸式技术,比如虚拟现实(VR)和增强现实(AR),让开发者可以直接在浏览器里创建吸引人的3D体验。
WebSocket API:提供客户端和服务器之间的全双工通信,非常适合聊天系统、实时流媒体应用和协同编辑等实时应用。
推送通知API(Push Notification API):即使浏览器没有打开,网站也能向用户发送及时且相关的消息,从而提高用户的参与感。
Web Share API:为 web 应用提供了一种标准的方式来分享内容或资源使用原生分享机制,使得分享链接、文件或文本给其他应用更简单。
Fetch API,取代了较旧的XMLHttpRequest,使之简化了异步数据的获取。
Web支付API简化了在线支付流程,提供统一的支付界面,让用户可以使用信用卡和数字钱包等支付方式进行支付。
地理位置 API:提供获取用户地理位置的功能,从而实现诸如地图服务、基于位置的推荐或地理围栏功能等特性。
文件系统访问 API:允许网页应用读写用户的本地文件,提供类似原生应用的文件操作体验。
WebRTC 小试牛刀WebRTC 支持实时通信,包括音视频及数据共享。要简单演示 WebRTC,你需要以下这些组件:
index.html
app.js
WebSocket 或 HTTP REST API
内置 WebRTC API
本地及远程视频元素
管理对等连接的按钮
WebRTC 设置
它是怎么运作的
访问用户的摄像头和麦克风功能:创建一个功能来访问用户的摄像头和麦克风,以便将本地流显示在本地视频元素上。
点对点连接:实现一个用于处理媒体交换的函数。
信号模拟:通过信号服务器模拟发送和接收数据。
远程视频显示:在远程视频中显示远程轨道。
ICE候选,:与对等方交换这些候选以建立连接。
Web API是现代 web 开发的基石,使开发人员能够构建强大、可扩展且引人入胜的应用程序。不论是探索 WebRTC 用于实时通信,还是利用文件系统访问 API 实现类似原生的体验,可能性无穷。今天就动手试试,为 web 的发展添砖加瓦。
共同学习,写下你的评论
评论加载中...
作者其他优质文章