我需要Quarkus使用内容类型标头application/wasm
而不是application/octet-stream
来提供wasm文件。
首先,我尝试使用undertow-handlers.conf
设置内容类型,如下所示:
path-suffix('.wasm') -> set("o{Content-Type}", "application/wasm")
对于其他标头,这可以正常工作,但是Content-Type似乎被后续处理程序覆盖。
此后,我尝试在src/main/resources/META-INF
下添加一个web.xml,该文件具有类似wasm文件的mime映射:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
id="WebApp_ID" version="3.1">
<mime-mapping>
<extension>wasm</extension>
<mime-type>application/wasm</mime-type>
</mime-mapping>
</web-app>
这种方法似乎对Content-Type无效。
在Quarkus中覆盖静态文件的mime类型映射的正确方法是什么?为什么web.xml配置不起作用?
答案 0 :(得分:1)
您是否明确添加了quarkus-undertow
扩展名?因为默认情况下,它不存在,并且由Vert.x提供服务,所以您需要添加一个Vert.x处理程序。