ASP.NETCore6开启文件服务允许通过url访问附件(图片)

需求背景

最近在做一个工作台的文件上传下载功能,主要想实现上传图片之后,可以通过url直接访问。由于url直接访问文件不安全,所以需要手动开启文件服务。

配置

文件路径如下,其中Files是存放文件的目录:

那么,在Program.cs文件中,可以通过这样配置来开启文件服务:

csharp 复制代码
#region 允许通过url访问文件
app.UseStaticFiles(new StaticFileOptions{
    RequestPath = new PathString("/Files"), // 对外访问的路径
    FileProvider = new PhysicalFileProvider(Path.Combine(Directory.GetCurrentDirectory(), "Files")) // 指定实际物理路径
});
#endregion

其中,RequestPath是前端的请求路径,FileProvider是后端指向的实际物理地址,在这里则指向我的Files文件目录。

配置完成后,前端即可通过http://localhost:5047/Files/your-picture-address.jpg来访问图片。(http://localhost:5047是我的后端项目地址,放上服务器也一样)。

提示

如果前端项目部署在Nginx中(通常指服务器部署),则需要在Nginx中添加一行代理请求,否则无法正常请求。

bash 复制代码
location /Files/ {
	proxy_pass http://134.xxx.xxx.xxx:5047;
}
相关推荐
llm大模型算法工程师weng21 分钟前
Python敏感词检测方案详解
开发语言·python·c#
游乐码39 分钟前
c#stack
开发语言·c#
橘子编程1 小时前
编程语言全指南:从C到Rust
java·c语言·开发语言·c++·python·rust·c#
zztfj2 小时前
C# 异步方法 async / await CancellationToken 设置任务超时并手动取消耗时处理
c#·异步
无风听海2 小时前
.NET10之C# 中的is null深入理解
服务器·c#·.net
龙侠九重天4 小时前
C# 机器学习数据处理
开发语言·人工智能·机器学习·ai·c#
筱璦16 小时前
期货软件开发 - C# 调用 HQChart 指标计算 C++ 动态库
c++·microsoft·c#
武藤一雄17 小时前
C# 异常(Exception)处理避坑指南
windows·microsoft·c#·.net·.netcore·鲁棒性
武藤一雄21 小时前
WPF中ViewModel之间的5种通讯方式
开发语言·前端·microsoft·c#·wpf
雨浓YN21 小时前
OPC UA 通讯开发笔记 - 基于Opc.Ua.Client
笔记·c#