ImageSharp.Web AzureBlobStorageImageProvider 给出 404
ImageSharp.Web with AzureBlobStorageImageProvider giving 404's
按照示例代码,我尝试连接 ImageSharp.Web 的 AzureBlobStorageImageProvider
,但所有图像请求都会导致 404。知道我的接线遗漏了什么吗?
查看文档似乎 url 惯例应该是 https://localhost:44336/container-name/file-name.jpg?width=30
在我的 Startup.cs 中,我有以下代码:
public void ConfigureServices(IServiceCollection services)
{
...
services.AddImageSharp()
.Configure<AzureBlobStorageImageProviderOptions>(options =>
{
// The "BlobContainers" collection allows registration of multiple containers.
options.BlobContainers.Add(new AzureBlobContainerClientOptions
{
ConnectionString = "REDACTED",
ContainerName = "test-container"
});
})
.AddProvider<AzureBlobStorageImageProvider>()
.Configure<AzureBlobStorageCacheOptions>(options =>
{
options.ConnectionString = "REDACTED";
options.ContainerName = "cache";
// Optionally create the cache container on startup if not already created.
AzureBlobStorageCache.CreateIfNotExists(options, PublicAccessType.None);
})
.SetCache<AzureBlobStorageCache>();
}
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
...
app.UseImageSharp();
}
有什么我可能遗漏的想法吗?
看来您需要先 ClearProviders()
添加 AzureBlobStorageImageProvider
。所以代码变成:
.ClearProviders()
.AddProvider<AzureBlobStorageImageProvider>()
按照示例代码,我尝试连接 ImageSharp.Web 的 AzureBlobStorageImageProvider
,但所有图像请求都会导致 404。知道我的接线遗漏了什么吗?
查看文档似乎 url 惯例应该是 https://localhost:44336/container-name/file-name.jpg?width=30
在我的 Startup.cs 中,我有以下代码:
public void ConfigureServices(IServiceCollection services)
{
...
services.AddImageSharp()
.Configure<AzureBlobStorageImageProviderOptions>(options =>
{
// The "BlobContainers" collection allows registration of multiple containers.
options.BlobContainers.Add(new AzureBlobContainerClientOptions
{
ConnectionString = "REDACTED",
ContainerName = "test-container"
});
})
.AddProvider<AzureBlobStorageImageProvider>()
.Configure<AzureBlobStorageCacheOptions>(options =>
{
options.ConnectionString = "REDACTED";
options.ContainerName = "cache";
// Optionally create the cache container on startup if not already created.
AzureBlobStorageCache.CreateIfNotExists(options, PublicAccessType.None);
})
.SetCache<AzureBlobStorageCache>();
}
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
...
app.UseImageSharp();
}
有什么我可能遗漏的想法吗?
看来您需要先 ClearProviders()
添加 AzureBlobStorageImageProvider
。所以代码变成:
.ClearProviders()
.AddProvider<AzureBlobStorageImageProvider>()