Ste*_*rup 5 azure azure-functions
我一直在尝试创建一个Azure功能,当我将图像添加到我的blob存储帐户上的容器时触发.
唯一似乎有效的是,当我有一个字符串参数,但文件是图像,所以我没有使用包含图像数据的字符串.
所以我一直在尝试我可以在网上找到的每一个例子(不是那么多),现在我已经尝试了来自azure webjobs sdk的样本- 这也不是真的.所以要么我是愚蠢的,我现在感觉到的,我错过了一些明显的东西?
我得到了一些错误:
Microsoft.Azure.WebJobs.Host:错误索引方法'Functions.thumbnailgenerator'.Microsoft.Azure.WebJobs.Host:无法绑定BlobTrigger以键入"Microsoft.WindowsAzure.Storage.Blob.ICloudBlob".
Microsoft.Azure.WebJobs.Host:错误索引方法'Functions.thumbnailgenerator'.Microsoft.Azure.WebJobs.Host:无法绑定BlobTrigger以键入"Microsoft.WindowsAzure.Storage.Blob.CloudBlockBlob".
现在我正在尝试的功能是上面示例中给出的功能,就像我尝试过的其他许多功能一样,除了字符串外,它不能用于任何其他功能.
那么我应该如何创建函数(使用C#)和function.json文件,以使其与blob一起使用,并且最好使用blob的名称作为字符串.要么是blob in,要么是out,其中out blob的名称位于不同的容器中,并且名称以硬编码字符串为前缀.
这就是我现在得到的,它没有运行:
function.json
{
"bindings": [
{
"type": "blobTrigger",
"name": "blob",
"direction": "in",
"path": "kitimages/{name}.{ext}"
},
{
"type": "blob",
"name": "output",
"direction": "inout",
"path": "thumbnails/{name}_300_200.{ext}"
} ],
"disabled": false
}
Run Code Online (Sandbox Code Playgroud)
run.csx
#r "Microsoft.WindowsAzure.Storage"
using System;
using Microsoft.Azure.WebJobs.Host;
using Microsoft.WindowsAzure.Storage.Blob;
public static void Run(CloudBlockBlob blob, CloudBlockBlob output, TraceWriter log)
{
log.Info($"C# Blob trigger function processed a blob. Blob={blob.Name}");
}
Run Code Online (Sandbox Code Playgroud)
编辑:看看这里我的问题的最终解决方案:在云中完成工作
我们需要改进这里的模板,这是您遇到的常见陷阱(对此感到抱歉!)。我们正在修复,请参阅 GitHub 问题:让用户更轻松地开始使用二进制 blob 触发器。
有一个绑定到流的内置模板。转到“新建函数”,然后选择“语言”为“C#” ,“场景”选择“示例”。
有关使用 CloudBlockBlob 绑定的更高级示例(需要尚未记录的 InOut 绑定方向),请参阅 ContosoMoments 中的函数示例:DeleteImages Function。
请注意,您可以浏览 GitHub 存储库中的所有模板: https: //github.com/Azure/azure-webjobs-sdk-templates。
| 归档时间: |
|
| 查看次数: |
1191 次 |
| 最近记录: |