我在浏览器上使用GCP控制台。我创建了一个函数,如下所示:
function listFiles(bucketName) {
// [START storage_list_files]
// Imports the Google Cloud client library
const Storage = require('@google-cloud/storage');
// Creates a client
const storage = new Storage();
storage
.bucket(bucketName)
.getFiles()
.then(results => {
const files = results[0];
console.log('Files:');
files.forEach(file => {
console.log(file.name);
});
})
.catch(err => {
console.error('ERROR:', err);
});
// [END storage_list_files]
}
exports.helloWorld = function helloWorld (req, res) {
if (req.body.message === undefined) {
// This is an error case, as "message" is required
res.status(400).send('No message defined!');
}
else {
// Everything is ok
console.log(req.body.lat);
console.log(req.body.lon);
listFiles("drive-test-demo");
res.status(200).end();
}
}
从字面上看,如果要通过某个HTTPS触发器,我现在要做的就是列出存储桶中的文件。
我的package.json文件如下:
{
"name": "sample-http",
"version": "0.0.1",
"dependencies": {
"@google-cloud/storage": "1.5.1"
}
}
我收到错误消息“找不到模块'@ google-cloud / storage'”
到目前为止,我所看到的大多数查询都已经通过使用npm install解决了,但是考虑到我的index.js和package.json文件存储在gcloud存储桶中的zip文件中,我不知道该怎么做。关于如何解决此问题的任何建议将不胜感激。
最佳答案
打开控制台,将dir更改为您的功能项目,然后键入:
npm install --save @google-cloud/storage
就这样!