我希望我的IIS能够正确显示.ts文件,是否有TypeScript的MIME类型?text/javascript或类似类型也可以,但是有没有相关的规范呢?
我已经查看了语言规范,但是没有找到任何线索。
我希望我的IIS能够正确显示.ts文件,是否有TypeScript的MIME类型?text/javascript或类似类型也可以,但是有没有相关的规范呢?
我已经查看了语言规范,但是没有找到任何线索。
想知道您为什么要提供TypeScript文件是个好主意。
据我所知,TypeScript用于编译成JavaScript,然后在浏览器中执行。目前,没有原生支持TypeScript的浏览器(如果我错了,请纠正我)。
如果您仍想通过IIS提供.ts文件,您仍可以在IIS管理中添加与.ts相关联的自定义MIME类型。标准定义了前缀x.
、vnd.
和prs.
,而vnd.前缀也列在了标准化的MIME类型text/和application/中。
因此,根据您的使用情况,您可以选择text/x.typescript
或text/prs.typescript
。
把这个放进你的 web.config 文件里;
<configuration>
...
<system.webServer>
<staticContent>
<mimeMap fileExtension=".ts" mimeType="application/x-typescript" />
</staticContent>
</system.webServer>
</configuration>
Deno 使用 application/typescript
来提供 TypeScript 文件的服务,从而让你可以使用以下方式运行它们:
deno run "https://example.com/file.ts"
.ts
文件相同,都是 application/typescript
。 - Avestura您可能还需要注释掉TypeScriptAssetHandler
,该处理程序将.ts文件转换为javascript。
<handlers>
<!--<add name="TypeScriptAssetHandler" path="*.ts" verb="GET" type="BundleTransformer.TypeScript.HttpHandlers.TypeScriptAssetHandler, BundleTransformer.TypeScript" resourceType="File" preCondition="" />-->
</handlers>
[HttpException (0x80004005): During the output text content of processed asset an unknown error has occurred.
See more details:
Exception has been thrown by the target of an invocation.]
使用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
x.
已被弃用,现在应使用prs.
(“我需要一个适合自己的MIME类型”)和vnd.
(“我需要一个适合在我的组织树下发布的MIME类型”)进行区分。 - nonchip