Asp.net mvc 如何更改ASP.NET MVC中静态脚本文件的内容类型?

Asp.net mvc 如何更改ASP.NET MVC中静态脚本文件的内容类型?,asp.net-mvc,http,content-type,ecmascript-5,Asp.net Mvc,Http,Content Type,Ecmascript 5,我有一个标准的ASP.NET MVC 5 web项目,但我希望脚本文件夹中的所有.js文件都被提供给浏览器,内容类型设置为text/ecmascript,而不是application/javascript 我遇到的问题是,请求正在通过以下方式发送到服务器: GET /myapp/Scripts/test.js HTTP/1.1 Accept: text/ecmascript ... 但由于.js文件的内容类型通常为application/javascript,因此Web服务器会以406 Not

我有一个标准的ASP.NET MVC 5 web项目,但我希望脚本文件夹中的所有.js文件都被提供给浏览器,内容类型设置为
text/ecmascript
,而不是
application/javascript

我遇到的问题是,请求正在通过以下方式发送到服务器:

GET /myapp/Scripts/test.js HTTP/1.1
Accept: text/ecmascript
...
但由于.js文件的内容类型通常为
application/javascript
,因此Web服务器会以
406 Not Accepted
错误进行响应


如何在ASP.NET MVC中覆盖静态内容的内容类型?

我找到了解决方案,只需将其添加到web.config:

<system.webServer>
  <staticContent>
    <remove fileExtension=".js"/>
    <mimeMap fileExtension=".js" mimeType="text/ecmascript"/>
  </staticContent>
</system.webServer>

更改IIS中*.js的mime类型: