【发布时间】:2017-05-24 05:42:57
【问题描述】:
我正在使用带有 Angular 2 前端的 spring boot,我想为我的 swagger 配置添加授权。
我当前的 springfox 设置如下:
@Configuration
@EnableSwagger2
public class SwaggerConfig {
@Bean
public Docket api() {
return new Docket(DocumentationType.SWAGGER_2)
.select()
.apis(RequestHandlerSelectors.basePackage("mybasepackage"))
.paths(PathSelectors.ant("/api/*"))
.build();
}
}
我的应用程序使用 JWT 过滤器进行授权,我希望 swagger 使用令牌,只要它在用户浏览器中没有过期。
我看到我可以像这样在 HTML 文件中添加:
function addApiKeyAuthorization() {
var key = JSON.parse(localStorage.getItem("ls.authentication-token"));
if (key && key.trim() != "") {
var apiKeyAuth = new SwaggerClient.ApiKeyAuthorization("Authorization", "Bearer " + key, "header");
window.swaggerUi.api.clientAuthorizations.add("bearer", apiKeyAuth);
log("Set bearer token: " + key);
}
}
因为我使用的是 Springfox,所以我没有这个选项。有没有办法可以通过 Docket api 添加它?
【问题讨论】:
-
为什么你没有那个选项,因为你使用的是 springfox?
-
它正在生成 HTML 文件
标签: angular spring-boot jwt swagger-ui springfox