[英]Azure Functions: C# Get blob URI
我有一个Azure函数,每当将映像上载到Azure存储帐户中的容器时,就会触发该函数。 我阅读了信息流并执行了一些操作。
我也想获取触发函数的Blob的uri,但是我该怎么做? 我是否需要使用其他输入/输出?
public static void Run(Stream myBlob, TraceWriter log)
{
//get byte array of the stream
byte[] image = ReadStream(myBlob);
// ...
}
如果您真的想要完整的URI,而不仅仅是blob相对路径( string blobTrigger
将为您提供string blobTrigger
),那么您需要执行以下操作:
public static void Run(CloudBlockBlob myBlob, TraceWriter log) { // ... }
那时,您可以使用CloudBlockBlob对象模型来获取URI(例如StorageUri
或其他一些相关的道具)并获取流(例如BeginDownloadToStream
)。 请注意,执行此操作时,您将无法再直接将Stream作为输入参数接收。
在绑定中,可以为Blob路径定义一个变量名:
"path": "foo/{name}.bar",
然后添加name
作为另一个函数参数:
public static void Run(Stream myBlob, string name, TraceWriter log)
根据webjobs的blob文档 ,您可以简单地添加一个string blobTrigger
参数:
public static void Run(Stream myBlob, string blobTrigger, TraceWriter log)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.