【发布时间】:2018-09-23 09:04:04
【问题描述】:
我需要使用 Java 创建 Azure 函数 BlobTrigger 来监视我的存储容器中是否有新的和更新的 blob。
用下面的代码试过
import java.util.*;
import com.microsoft.azure.serverless.functions.annotation.*;
import com.microsoft.azure.serverless.functions.*;
import java.nio.file.*;
import java.io.*;
import java.net.URL;
import java.net.URLConnection;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import com.microsoft.azure.storage.*;
import com.microsoft.azure.storage.blob.*;
@FunctionName("testblobtrigger")
public String testblobtrigger(@BlobTrigger(name = "test", path = "testcontainer/{name}") String content) {
try {
return String.format("Blob content : %s!", content);
} catch (Exception e) {
// Output the stack trace.
e.printStackTrace();
return "Access Error!";
}
}
执行时显示错误
存储绑定(blob/queue/table)必须有非空连接。在方法上发现无效的存储绑定:
添加连接字符串时它正在工作
public String kafkablobtrigger(@BlobTrigger(name = "test", path = "testjavablobstorage/{name}",connection=storageConnectionString) String content) {
为什么在使用 blobtrigger 时需要添加连接字符串?
在 C# 中它在没有连接字符串的情况下工作:
public static void ProcessBlobContainer1([BlobTrigger("container1/{blobName}")] CloudBlockBlob blob, string blobName)
{
ProcessBlob("container1", blobName, blob);
}
我没有看到任何用于 @BlobTrigger 的 Azure 函数的 Java 示例。
【问题讨论】:
-
C# 回退到默认配置名称。也许java没有?添加连接字符串有什么问题?
标签: java azure azure-functions azure-cli