spring-boot - 无法将 csv 文件上传到 Azure 存储 Blob
问题描述
下面的代码不会将示例 MY_TEST_FILE.csv 上传到 azure 存储 blob。无法解决问题或找到任何这样做的示例。代码中缺少什么?日志中没有错误,在 Azure 存储中找不到文件
'''
StorageSharedKeyCredential credential = new StorageSharedKeyCredential("test", "test");
String uri = "https://test.blob.core.windows.net";
BlobServiceClient client = new BlobServiceClientBuilder()
.endpoint(uri)
.credential(credential)
.buildClient();
CamelContext mycontext = new DefaultCamelContext();
mycontext.getRegistry().bind("client", client);
mycontext.setStreamCaching(true);
mycontext.addRoutes(new RouteBuilder() {
@Override
public void configure() {
from("file:c://folder2?fileName=MY_TEST_FILE.csv&noop=true").to("azure-storage-blob://test/report?blobName=MY_TEST_FILE.csv&operation=uploadBlockBlob&serviceClient=#client");
}
});
mycontext.start();'''
解决方案
您可能需要为 azure-storage-blob 组件提供凭据。
StorageSharedKeyCredential credentials = new StorageSharedKeyCredential(accountName, accountKey);
mycontext.getRegistry().bind("credentials", credentials);
from("file:c://folder2?fileName=MY_TEST_FILE.csv&noop=true")
.to("azure-storage-blob:accountName/containerName?"
+ "blobName=MY_TEST_FILE.csv&operation=uploadBlockBlob"
+ "&credentials=#credentials");
请注意,#beanId
已弃用,您可能必须#bean:beanId
根据骆驼版本切换到。
推荐阅读
- c - 带有扩展宏和类型转换的 C 条件预处理器
- r - 从多个 html 中读取节点并将结果存储为向量
- c# - 使用 HttpClient 时未执行 finally 块
- python - 如何使用 Python 将值写入 SQLite 中的选定行和列
- ajax - 如何创建具有关联的新实体
- javascript - 全局变量在量角器中获取值作为 [Object object]
- javascript - 在 Google Assistant webhook 中创建一个 HttpRequest
- c# - 在 C# 中将数据写入文本框时显示进度条
- c# - 如何使用 Linq to Entities 获取具有最新日期的记录组
- php - 使用 curl 发布到 API 不起作用