java - java中使用Blob触发器的azure函数的传入内容应声明哪个类

标签 java azure azure-functions

我完成了java azure函数教程。并希望使用 Blob 触发器而不是 httptrigger 构建我的 azure 函数。

public class Function {

@FunctionName("myfunction")
@StorageAccount("xxxxxxxxx")
public void blobHandler(
    @BlobTrigger(name = "content", path = "container/{name}", dataType = "binary") byte[] content,
    @BindingName("name") String name, final ExecutionContext context
) {
    context.getLogger().info("Java Blob trigger processed a request.");
    try {
        context.getLogger().info("Java Blob trigger function processed a blob. Name: " + name + "\n  Size: " + content.length + " Bytes");
        // process the CT converter function
    } catch (Exception e) {
        //TODO: handle exception
        context.getLogger().info("Error");
    }

}
}

然后当我发现我应该使用 Stream 作为数据类型而不是像 C# 中那样使用 Binary (dataType = "Stream") 。但是我无法找到应该使用哪个 java 类作为内容的流数据类型。只是流类?尝试过,但它对我不起作用。有人对此有更多经验吗?

最佳答案

目前不支持

Stream。看这个github issue .

Document

You are free to use all the data types in Java for the input and output data, including native types, customized Java types and specialized Azure types defined in azure-functions-java-core package.

对于blobtrigger,我们可以使用Stringbyte[]、POJO类进行blobtrigger内容绑定(bind)。注意,使用POJO时,必须省略参数dataType

关于java - java中使用Blob触发器的azure函数的传入内容应声明哪个类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50758413/

相关文章:

azure - 未指定默认订阅。使用 Select-AzureSubscription -Default <subscriptionName> 设置默认订阅

azure-functions - Microsoft Graph 更改通知是否始终为 CREATED 事件发送 UPDATED 通知?

c# - 绑定(bind) CosmosDB 本地函数

java - 错误 StatusLogger 捕获 java.lang.AbstractMethodError

java - 如何在没有属性类的情况下拥有相同的程序,这里是 int 私有(private)计数器

java - 序列化 ArrayList<object> 二进制文件的数据结构

Azure AD 使用 REST API 在应用程序注册中添加应用程序角色

azure - 如何从 azure 中的虚拟机 ping 负载均衡器 IP 地址

java - JUnit 依赖项未加载

azure - 标准逻辑应用运行超时设置不起作用