Swagger UI未在Vert.X中使用Java加载

fnatzsnv  于 2023-10-18  发布在  Java
关注(0)|答案(1)|浏览(143)

我已将https://github.com/swagger-api/swagger-ui/tree/master/dist中的所有文件复制到resources/webroot文件夹中。当我尝试在Chrome上打开Swagger UI时,我得到了这3个空白白色屏幕的错误。另外,创建静态处理程序指向此文件夹。

router.route("/doc/*").handler(StaticHandler.create().setCachingEnabled(false).setWebRoot("webroot"));

92dk7w1h

92dk7w1h1#

如果您在浏览器中查看*-bundle.js-文件,您将看到在262464行中有一些无效字符。这是机器上的编码问题的结果。也就是说,StaticHandler通过报头Content-Type传递资源,例如text/html;charset=Windows1251而不是UTF-8
为了解决这个问题,我在Gradle配置中添加了一个系统属性:

plugins {
  id 'application'
}

applicationDefaultJvmArgs = [ 
  '-Dfile.encoding=UTF-8',
]

设置文件编码的其他选项是described here

相关问题