我在我的Web API项目中包含了Swagger UI的[dist]文件夹。
但是当我去这个地方的时候 http://localhost:1234/swagger 它不会自动指向http://localhost:1234/swagger/index.html。
所以,当我直接访问http://localhost:1234/swagger/index.html时,我会收到一个空文本框的页面:----
我希望这是基于环境动态发生的。例如,如果我访问http://test.abc.com/swagger,则文本应自动填充为http://test.abc.com/swagger/docs/v1。
答案 0 :(得分:1)
回答你的第一个问题:
在index.html
页面中,您可以拥有以下内容:
<script type="text/javascript">
$(function() {
window.swaggerUi = new SwaggerUi({
url: "http://localhost:1234/swagger/docs/v1",
...
});
</script>
根据您访问的网站动态生成网址,您可以执行以下操作:
<script type="text/javascript">
// Initialize the url variable
if (!window.location.origin) {
window.location.origin = window.location.protocol + "//" +
window.location.hostname + (window.location.port ? ':' +
window.location.port : '');
}
$(function() {
// Create the generated url
var myUrl = window.location.origin + '/docs/v1';
// Initialize the Swagger object
window.swaggerUi = new SwaggerUi({
url: myUrl,
...
});
});
</script>