如何从 Cloud Functions 调用其他 Google API?
How do I call other Google APIs from a Cloud Function?
我想从我的云函数调用其他 Google API,例如,在收到来自 Pubsub 的消息后将文件写入云存储。我该怎么做?
您可以使用 google-cloud client library for Node.js 来完成此操作。 Java、Python 和 Ruby.
也可以使用相同的库
例如在 Node JS 中,您需要相应地编辑 package.json 文件:
{
"dependencies": {
"google-cloud": "*"
},
...
}
然后,在您的代码中,您可以简单地调用相关库。以下示例仅列出项目中的存储桶:
var gcloud = require('google-cloud');
exports.helloworld = function(context, data) {
var gcs = gcloud.storage({projectId: '<PROJECT>'});
gcs.getBuckets(function(err, buckets) {
if (!err) {
buckets.forEach(function(bucket) {
console.log(bucket.name);
});
} else {
console.log('error: ' + err);
}
});
context.success();
}
您也不应该包含整个 google-cloud
npm 模块,而是指定一个特定的子模块,例如require('@google-cloud/storage')
在上面的例子中。
我想从我的云函数调用其他 Google API,例如,在收到来自 Pubsub 的消息后将文件写入云存储。我该怎么做?
您可以使用 google-cloud client library for Node.js 来完成此操作。 Java、Python 和 Ruby.
也可以使用相同的库例如在 Node JS 中,您需要相应地编辑 package.json 文件:
{
"dependencies": {
"google-cloud": "*"
},
...
}
然后,在您的代码中,您可以简单地调用相关库。以下示例仅列出项目中的存储桶:
var gcloud = require('google-cloud');
exports.helloworld = function(context, data) {
var gcs = gcloud.storage({projectId: '<PROJECT>'});
gcs.getBuckets(function(err, buckets) {
if (!err) {
buckets.forEach(function(bucket) {
console.log(bucket.name);
});
} else {
console.log('error: ' + err);
}
});
context.success();
}
您也不应该包含整个 google-cloud
npm 模块,而是指定一个特定的子模块,例如require('@google-cloud/storage')
在上面的例子中。