由于“cloudinary.uploader 未定义”错误,从 cloudinary 中删除媒体文件失败
Posted
技术标签:
【中文标题】由于“cloudinary.uploader 未定义”错误,从 cloudinary 中删除媒体文件失败【英文标题】:Deleteing media files from cloudinary failing due to "cloudinary.uploader is undefined" error 【发布时间】:2021-09-05 10:28:48 【问题描述】:我正在使用 express 和 node.js 开发一个 Web 应用程序。我正在使用 cloudinary 上传媒体文件。上传和访问媒体工作正常。但我无法从云端删除图像。这是我用来删除的代码:
for (let filename of req.body.deleteImages)
await cloudinary.uploader.destroy(filename);
我尝试用控制台记录 cloudinary 对象,一切似乎都井然有序:
cloudinary:
config: [Function (anonymous)],
utils: [Object],
uploader: [Object],
api: [Object],
provisioning: [Object],
PreloadedFile: [class PreloadedFile],
Cache: [Object],
url: [Function: url],
image: [Function: image],
video: [Function: video],
source: [Function: source],
picture: [Function: picture],
cloudinary_js_config: [Function: cloudinary_js_config],
CF_SHARED_CDN: 'd3jpl91pxevbkh.cloudfront.net',
AKAMAI_SHARED_CDN: 'res.cloudinary.com',
SHARED_CDN: 'res.cloudinary.com',
BLANK: 'data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7',
search: [class Search]
但是当函数被调用时我得到Cannot read property 'destroy' of undefined
错误。我尝试了控制台日志记录cloudinary.uploader
,我得到了undefined
。提前致谢。
【问题讨论】:
你是如何初始化 Cloudinary 模块的? Cloudinary 模块被初始化为一个单独文件中的对象,其中 API 密钥和秘密作为选项传入。该对象本身工作正常,因为我能够通过该对象上传媒体文件。 【参考方案1】:我解决了。问题是我在导入 cloudinary 模块时没有对其进行解构。所以我试图访问的云变量是整个模块,而不是我需要使用的导出对象。感谢您花时间阅读我的问题。
【讨论】:
以上是关于由于“cloudinary.uploader 未定义”错误,从 cloudinary 中删除媒体文件失败的主要内容,如果未能解决你的问题,请参考以下文章