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;
}
相关推荐
小先生8121 小时前
.NET Core后台任务队列
.net·.netcore
游乐码1 小时前
c#万物之父装箱拆箱
开发语言·c#
GIS程序猿2 小时前
批量出图工具,如何使用C#实现动态文本
开发语言·arcgis·c#·arcgis插件·gis二次开发
量子物理学2 小时前
三、C#高级进阶语法——特性(Attribute)
java·算法·c#
量子物理学2 小时前
四、C#高级进阶语法——委托(Delegate)
开发语言·c#
bepeater12344 小时前
Laravel9.X核心特性全面解析
c语言·c++·c#·php
MoFe14 小时前
【.net core】【watercloud】动态数据转换为静态表格,或者表格数据返回需要后处理
.netcore
lpfasd1234 小时前
Markdown 导出 Word 文档技术方案
开发语言·c#·word
m5655bj6 小时前
通过 C# 将 PPT 文档转换为 HTML 格式
c#·html·powerpoint
未来之窗软件服务6 小时前
AI人工智能(十五)C# AI的智障行为http服务—东方仙盟练气期
开发语言·http·c#