我目前正在研究一个blobtrigger,每次创建blob,上传blob的新版本(因此blob已更改)或删除blob时都会触发该blobtrigger。所以我的基本实现看起来像这样:
[FunctionName("SomeTriggerFunction")]
public void Run([BlobTrigger("container-name/{name}", Connection = "AzureWebJobsStorage")] Stream myBlob,
string name, ILogger log, ExecutionContext executionContext)
{
// do some stuff with the blob
}
这个想法是获取blobs版本信息并将它们存储到另一个数据源中。检索blob版本信息的最简单方法是使用函数name;参数,向blob存储发送请求并检索版本信息。但这感觉有点奇怪,因为我必须再次访问存储空间。
所以我的问题是,有没有更聪明的方法来检索blob版本信息直接在触发器内?一些属性吗?另一个触发器定义?
您需要在blob存储中启用版本控制,然后您可以直接检查版本,因为每个blob将有一个唯一的versionId,您可以以后存储。
参考以下文档