【问题标题】:How to read local files in the Google Cloud Functions emulator?如何在 Google Cloud Functions 模拟器中读取本地文件?
【发布时间】:2017-03-30 11:52:05
【问题描述】:

我的 Google Cloud Function 需要读取本地文件(图像)。 我已经在函数目录树中添加了图像,所以我有:

packages.json
src/functions.js
lib/functions.js
img/shower.png

这是我用来阅读的代码:

var img = await new Jimp.read("../img/shower.png")

现在,当函数触发时,我得到了这个: 2017-03-30T03:00:25.118Z - error: (node:1685) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): Error: ENOENT: no such file or directory, open '../img/shower.png'

我尝试移动图像,例如移动到我的函数所在的目录 (lib/),但没有成功。

我还记录了process.cwd(),它返回了一个意外:/usr/local/lib/node_modules/@google-cloud/functions-emulator

有什么提示吗?

【问题讨论】:

  • 听起来他们在做 npm install -g。
  • (我的建议是尝试在本地做些什么......地狱,如果你真的很绝望,我相信你可以将 img 放在 lib/image.js 中,它会是那里 :) 。另一个有趣的事情是从根目录运行一个完整的目录列表......)
  • 好的,我会扫描它..

标签: google-cloud-functions


【解决方案1】:

好吧,诀窍就是从绝对路径读取文件

Jimp.read("__dirname+"img/shower.png")

这是__dirname的文档

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-11-13
    • 2020-07-28
    • 2020-03-07
    • 2019-09-22
    • 1970-01-01
    • 2019-05-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多