Node.js 从RESTAPI获取图像并使用Firebase云函数将其上载到Firebase云存储 我需要完成的事情

Node.js 从RESTAPI获取图像并使用Firebase云函数将其上载到Firebase云存储 我需要完成的事情,node.js,rest,firebase-realtime-database,google-cloud-functions,firebase-storage,Node.js,Rest,Firebase Realtime Database,Google Cloud Functions,Firebase Storage,我需要从RESTAPI(base64)获取图像,并将单个图像写入Firebase云存储。成功写入映像后,将日志写入Firebase实时数据库 有什么问题吗 我用AdminSDK初始化了Firebase应用程序(云函数),因为我需要一些管理功能(例如绕过实时数据库规则)。根据Firebase文档,如果我使用AdminSDK,那么为了操纵云存储,我必须使用“@google Cloud/Storage” 所以我查找了“@googlecloud/storage”,发现要上传文件,我必须调用方法“.upl

我需要从RESTAPI(base64)获取图像,并将单个图像写入Firebase云存储。成功写入映像后,将日志写入Firebase实时数据库

有什么问题吗 我用AdminSDK初始化了Firebase应用程序(云函数),因为我需要一些管理功能(例如绕过实时数据库规则)。根据Firebase文档,如果我使用AdminSDK,那么为了操纵云存储,我必须使用“@google Cloud/Storage”

所以我查找了“@googlecloud/storage”,发现要上传文件,我必须调用方法“.upload”,并指定文件路径作为参数

问题是我没有该文件的路径,因为我将其作为base64字符串。我不能为它生成路径,因为nodeJS没有方法URL.createObjectURL,并且该方法是不可能的。将该映像写入文件系统也不是解决方案,因为云函数是只读环境

我试过的东西
  • Polyfiling URL.createObjectURL,但它不起作用

  • 使用nodeJS模块FS将图像从RESTAPI写入文件系统,将其上载到云存储,然后将其删除

有没有解决这个问题的方法,或者有什么推荐的方法来实现这种功能?解决方案
我的第二个解决方案(使用fs编写临时文件)几乎是正确的,但我忘记了将文件目的地指定为
/tmp
。Firebase云功能中除了
/tmp
只读存储之外,什么都有。

您好,您能分享您的代码吗?提到环境提供了一个可写的
/tmp
目录,为什么不在那里写文件…?@esqew,噢,谢谢,我忘了那个选项。