我希望我的IIS能够正确显示.ts文件,TypeScript是否有MIME类型? text / javascript或类似的东西也可以使用,但是有没有规格吗?
我已经抬起language specification,但我没有发现任何线索。
答案 0 :(得分:26)
最好知道为什么要提供TypeScript文件。
据我所知,TypeScript用于编译为Javascript,然后在浏览器中执行。目前,对TypeScript没有原生支持(如果我错了,请纠正我。)
如果您仍希望通过IIS提供.ts文件,您仍然可以在与.ts相关联的IIS管理中添加custom mime-type。该标准定义了前缀x.
,vnd.
和prs.
以及vnd。前缀也列在标准化的mime类型text/和application/中。
因此,根据您的使用情况,您可以选择text/x.typescript
或text/prs.typescript
。
答案 1 :(得分:20)
坚持使用web.config;
<configuration>
...
<system.webServer>
<staticContent>
<mimeMap fileExtension=".ts" mimeType="application/x-typescript" />
</staticContent>
</system.webServer>
</configuration>
答案 2 :(得分:0)
您可能还需要注释掉{。{1}},将.ts文件转换为javascript。
TypeScriptAssetHandler
如果你定义了这个处理程序,你可能会得到这样的错误
<handlers>
<!--<add name="TypeScriptAssetHandler" path="*.ts" verb="GET" type="BundleTransformer.TypeScript.HttpHandlers.TypeScriptAssetHandler, BundleTransformer.TypeScript" resourceType="File" preCondition="" />-->
</handlers>
答案 3 :(得分:0)
使用Apache 2我只需将MIME类型设置为text / plain。这解决了我的问题,我得到了奇怪的结果,因为在报告的MIME类型是一些视频格式。
您可以通过Apache 2配置中的以下内容实现此目的:
<filesMatch "\.(html|htm|js|css|ts|ts!transpiled)$">
FileETag None
<ifModule mod_headers.c>
Header unset ETag
Header set Cache-Control "max-age=0, no-cache, no-store, must-revalidate"
Header set Pragma "no-cache"
Header set Expires "Wed, 11 Jan 1984 05:00:00 GMT"
</ifModule>
</filesMatch>
AddType text/plain ts