ASP.NET Core中添加MIME 类型


#事故现场

在asp.net core 中使用pdf.js插件,然后遇到一个问题,发现pdf的工具条的文字都是英文的;
在这里插入图片描述
打开浏览器的控制台,发现有一个报错:
http://localhost:2076/lib/pdf.js/web/locale/zh-CN/viewer.properties这个文件404了。
而且还报了很多异常。
在这里插入图片描述
经查实,代码文件中的确存在viewer.properties文件且路径正确,viewer.properties文件在静态目录下;

#解决方法

系统默认给我们提供的一些文件类型的处理方式,系统没有为我们提供处理的文件类型无法使用,例如:apk、properties文件,这就需要添加MIME Types了,才能正常访问;在传统的asp.net 项目中,可以通过在iis的MINE类型中添加,也可以在web.config中配置,但是在asp.net core的项目中如何配置呢?

  • 方法如下:
    在项目中的Startup.cs文件中的Configure方法中添加;
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
	//添加MIME
    var provider = new FileExtensionContentTypeProvider();
    provider.Mappings[".properties"] = "application/octet-stream";
    app.UseStaticFiles(new StaticFileOptions
    {
    	ContentTypeProvider = provider
    });
}

重新运行项目,viewer.properties文件正常加载,异常也没有了,显示也正常了;
在这里插入图片描述



posted @ 2020-03-06 20:26  willingtolove  阅读(4102)  评论(0编辑  收藏  举报