在 IBM Cloud Functions 平台上的调用操作(4)
- UID
- 1066743
|
在 IBM Cloud Functions 平台上的调用操作(4)
方法 3:在 node.js 应用程序内使用 npm request 包我们将考虑的下一种方法是,使用 npm request 包来调用应用程序中的操作。通过调用应用程序中的操作,可以将 OpenWhisk 操作用作微服务。 (Martin Fowler 的博客上有一篇 简要讨论了微服务。)
这是一个调用本文中引用的 OpenWhisk 操作的简短 node 应用程序:将 [URL] 替换为部署的 Hello World 代码的 URL。单击 Run 按钮运行该代码:
var options = {
// Paste in the URL of the deployed sample here
url: '[URL]',
// Use any name you like...
body: {'name': 'Susan'},
headers: {'Content-Type': 'application/json'},
json: true
};
function owCallback(err, response, body) {
if (!err && response.statusCode == 200) {
console.log(response.body.greeting);
} else {
console.log('The call failed! ' + err.message);
}
}
var request = require('request');
request.post(options, owCallback);
var options = {
// Paste in the URL of the deployed sample here
url: '[URL]',
// Use any name you like...
body: {'name': 'Susan'},
headers: {'Content-Type': 'application/json'},
json: true
};
function owCallback(err, response, body) {
if (!err && response.statusCode == 200) {
console.log(response.body.greeting);
} else {
console.log('The call failed! ' + err.message);
}
}
var request = require('request');
request.post(options, owCallback);
显示结果
options 对象包含 OpenWhisk 操作的 URL、输入数据 (body),它设置 Content-Type 标头,并告诉 request 对象发送给操作的数据是 JSON。
定义了选项和回调函数后,我们使用 request.post 通过合适的数据和标头将数据发送到 OpenWhisk 操作。 运行这个 node 应用程序会生成以下结果:
调用 console.log() 会输出 OpenWhisk 操作返回的 JSON 对象中的 greeting 字段。对于许多操作,需要检查一个更复杂的 JSON 对象来查找需要的数据,但我们在这里使它保持简洁。 |
|
|
|
|
|