C# Can';即使在修改<;请求过滤>;在applicationHost.config中

C# Can';即使在修改<;请求过滤>;在applicationHost.config中,c#,reactjs,asp.net-core,http-status-code-404,applicationhost,C#,Reactjs,Asp.net Core,Http Status Code 404,Applicationhost,我正在建立一个网站,遇到了无法访问/下载一些文件扩展名的问题,如.py,.cs。例如,当我请求获取.cs文件时 fetch("https://localhost:44310/userdata/texts/7/637381399366309280.cs") .then(resp => resp.blob()) .then(blob => { success(blob) }) .c

我正在建立一个网站,遇到了无法访问/下载一些文件扩展名的问题,如
.py
.cs
。例如,当我请求获取.cs文件时

fetch("https://localhost:44310/userdata/texts/7/637381399366309280.cs")
        .then(resp => resp.blob())
        .then(blob => {
            success(blob)
        })
        .catch((res) => alert('oh no!'));
userdata
文件夹是
wwwroot
文件夹的直接子文件夹<代码>成功是一个将blob转换为文本的函数。对于
.txt
文件(与.cs文件位于同一文件夹中),一切正常,我得到了.txt文件包含的确切文本。但是对于
.cs
文件,我得到了标记文本——我的站点的index.html。奇怪的是
哦,不未发出警报。我尝试了一些托管在github上的随机.cs文件,它工作得非常好

最初,我得到了一个直接的404。当我尝试打开链接时(
https://localhost:44310/userdata/texts/7/637381399366309280.cs
)在浏览器中,我看到以下页面:

我做了一些研究,找到了applicationHost.config,并删除了所有过滤后的扩展,结果如下所示:

<requestFiltering>
   <fileExtensions allowUnlisted="true" applyToWebDAV="false">
          <!--empty-->
   </fileExtensions>
   ....
</requestFiltering>

....
现在我再也没有404了。但是
success(blob)
返回标记文本-我的站点的index.html。(我使用Reactjs,我注意到当获取出现问题时会发生这种情况。)当我尝试在新选项卡中打开url时,我不会再看到
requestFiltering
错误页面。相反,将加载站点的主页


所以我真的很困惑。我没有404,但我似乎也没有收到文件。修改
requestFiltering
更改了一些内容,但似乎我还需要做其他事情。请帮助。

结果表明,除了在applicationHost.config文件中编辑
,我还必须在startUp类中编辑
ServeUnknownFileTypes

app.UseStaticFiles(new StaticFileOptions
{
   ServeUnknownFileTypes = true,
   DefaultContentType = "text/plain"
});
查看了解更多信息