前言
随着移动互联网的飞速发展,前端开发趋势也在不断变化。以往的前端开发工作主要集中在网站布局、交互设计等方面的开发,但是如今,随着移动端用户量急剧上升,前端开发涉及范围也越来越广泛。针对 web 应用的开发,需要前端和后端共同配合,前端人员不仅要有前端开发技能,也需要熟悉一些后端知识,如何调用后端接口等。本文介绍的 npm 包 openwhisk 就是一个很好的例子,它提供了一个简单而强大的后端服务,让你可以轻松地调用远程函数或者创建云端事件。
简介
OpenWhisk 是 IBM 在 2016 年开源的一种云计算服务,它是一种抽象的后端服务,提供了一种简单而统一的方式来运行、调试和配置开发者自己的云端应用程序。OpenWhisk 被许多前端开发者广泛使用,尤其是在构建 web 应用时非常实用。
npm 包 openwhisk 是一个 Node.js 的客户端,它提供了一些简单的方法,让你可以通过 Node.js 轻松地访问 OpenWhisk 服务,从而快速地构建和调试云端应用程序。
安装
npm 包 openwhisk 可以通过 npm 安装,你需要先安装 Node.js 和 npm 工具,然后执行下面的命令:
npm install openwhisk --save
这个命令会在你的项目目录下安装 openwhisk,同时保存到 package.json 中的依赖列表中。
使用
安装完 openwhisk 之后,你需要获取一个 OpenWhisk 的 API 密钥和命名空间,这样你才能使用 openwhisk 来访问你的 OpenWhisk 服务。你可以在 IBM Cloud 上申请一个免费的帐号并创建一个云函数,获取相应的 API 密钥和命名空间,然后将它们添加到你的配置文件中。一般来说,配置文件是一个 JSON 格式的文件,以 .wskprops 作为后缀名。
在配置文件中添加以下几行:
Whisk API host=https://openwhisk.ng.bluemix.net AUTH=<API_KEY> NAMESPACE=<NAMESPACE>
其中 API_KEY 和 NAMESPACE 分别代表你获取的 API 密钥和命名空间。
接下来,在你的 Node.js 应用程序中,你可以使用 openwhisk 模块来调用远程函数或者创建云端事件。下面我们来看几个示例:
示例一:调用远程函数
假设你的 OpenWhisk 云函数中有一个名为 hello 的函数,你可以通过以下代码调用该函数:
-- -------------------- ---- ------- ----- --------- - --------------------- ----- ------- - - -------- -------------------------- -------- ------------------------- ---------- -------------------------- -- ----- -- - ------------------- ------------------- ----- -------- --------- ----- ------- ----- ------- - ----- ------- - -------------- -- ---------------------
其中 options 中的三个参数依次是 API 地址、API 密钥和命名空间。ow.actions.invoke() 方法用来调用远程函数,它接受一个包含调用参数的对象,然后返回一个 Promise,当远程函数调用结束后可以获得返回结果,并且通过 console.log 输出到控制台上。
示例二:创建云端事件
假设你的 OpenWhisk 云函数中有一个名为 notify 的触发器,你可以通过以下代码来触发该事件:
-- -------------------- ---- ------- ----- --------- - --------------------- ----- ------- - - -------- -------------------------- -------- ------------------------- ---------- -------------------------- -- ----- -- - ------------------- -------------------- ----- --------- ------- - -------- ------- ------- - -------------- -- ---------------------
这里的 ow.triggers.invoke() 方法和示例一中的 ow.actions.invoke() 方法类似,只是它用来触发触发器而不是调用函数。
结语
npm 包 openwhisk 是一个非常实用的工具,它提供了一种简单而强大的方式来调用远程函数和触发云端事件。通过学习本文中的介绍,你可以轻松地开始使用 openwhisk 来构建和调试云端应用程序。如果你想更深入地了解 openwhisk,请访问官方文档进行学习。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/openwhisk