我正在尝试将blob从一个容器移动到另一个容器,使用相同的存储帐户。我正在使用Java SDK。
我的代码:
StorageSharedKeyCredential credential = new StorageSharedKeyCredential("accountname", "accountkey");
BlobServiceClient blobServiceClient = new BlobServiceClientBuilder().endpoint("storageaccountendpoint").credential(credential).buildClient();
BlobContainerClient blobContainerClient = blobServiceClient.getBlobContainerClient("failed");
BlobClient dst = blobContainerClient.getBlobClient("https://xxxstorage.blob.core.windows.net/success/");
BlobClient src = blobContainerClient.getBlobClient("https://xxxstorage.blob.core.windows.net/failed/Graphs.jpeg");
dst.beginCopy(src.getBlobUrl(), null);
我必须将blob从失败的容器移动到成功的容器。但是我遇到了500内部服务器错误。
接下来我可以尝试什么?
1条答案
按热度按时间swvgeqrz1#
我认为出现这个错误的原因是您在创建
BlobClient
时指定了blob URL而不是blob名称。另外,您没有为源容器创建BlobContainerClient
。请尝试将代码更改为:
请注意,我已经为源blob容器创建了一个新的
BlobContainerClient
。