Blob 存储上的 Azure 触发器,从图像 (Blob) 中提取 EXIF (lat/long/direction...) 数据
Posted
技术标签:
【中文标题】Blob 存储上的 Azure 触发器,从图像 (Blob) 中提取 EXIF (lat/long/direction...) 数据【英文标题】:Azure Trigger on Blob storage, extract EXIF (lat/long/direction...) data from image (Blob) 【发布时间】:2021-10-06 21:22:30 【问题描述】:我正在尝试从上传到 Azure 的 jpeg 中检索 lat/long/rotation 属性,但无法获取。
触发器上的当前函数:
module.exports = async function (context, myBlob)
context.log( myBlob);
;
触发器正在上传,我可以获取上传文件的 URI
【问题讨论】:
【参考方案1】:终于找到解决办法了
-
您必须使用 npm 安装“exif-parser”
使用 (Kudu) 访问 PowerShell 或 CMD
转到“高级工具”
-
然后,启动 PowerShell 调试控制台并导航到应用的 wwwroot 文件夹
-
然后安装你的模块“npm install exif-parser”
如果“package.json”出现任何错误,请忽略它
去你的触发器或函数应用程序并测试模块:)
const exifParser = require('exif-parser'); module.exports = async function (context, myBlob) context.log(myBlob); var parser = require('exif-parser').create(myBlob); var result = parser.parse(); context.log(result); ;
【讨论】:
【参考方案2】:如果您使用阅读器阅读 JPEG,那么应该有各种 EXIF 格式属性需要暴露。
如果您将 JPEG 下载为二进制文件,那么我认为您需要保存该文件,然后将其读回以获取该 EXIF 信息。
尝试使用 Exif.js javascript 库
一个用于从图像文件中读取 EXIF 元数据的 JavaScript 库。
您可以在浏览器中的图像上使用它,无论是来自图像还是文件输入元素。检索 EXIF 和 IPTC 元数据。这个包也可以在 AMD 或 CommonJS 环境中使用。
更多参考请关注github code
【讨论】:
以上是关于Blob 存储上的 Azure 触发器,从图像 (Blob) 中提取 EXIF (lat/long/direction...) 数据的主要内容,如果未能解决你的问题,请参考以下文章
如何将特定于类的文件夹中的图像上传到 Azure ML Studio 上的 Azure Blob 存储
使用 epplus 从 blob 触发 azure 函数访问 excel 文件
Flutter AZURE BLOB IMAGE UPLOAD - 如何将使用移动相机拍摄的图像上传到 azure blob 存储