【问题标题】:Swagger open API definition not working with Micronaut JWT security Micronaut version 2.2.1Swagger 开放 API 定义不适用于 Micronaut JWT 安全 Micronaut 版本 2.2.1
【发布时间】:2020-12-16 04:04:22
【问题描述】:

使用具有 JWT 安全性和开放 API 的 Micronaut 2.2.1。控制器定义不起作用,如下所示

Application.yml

micronaut:
  application:
    name: demo
  security:
    enabled: true
    intercept-url-map:
      - pattern: /swagger-ui/**
        access:
          - isAnonymous()
  router:
    static-resources:
      swagger:
        paths: classpath:META-INF/swagger
        mapping: /swagger/**
      swagger-ui:
        paths: classpath:META-INF/swagger/views/swagger-ui
        mapping: /swagger-ui/**

控制器

@Secured(SecurityRule.IS_ANONYMOUS)
@Controller("/product")
public record ProductController(IProducer iProducer) {
    @Get(uri = "/{text}")
    public Single<String> get(String text){
        return iProducer.sendText(text);
    }
}

api.service.yml

openapi: 3.0.1
info:
  title: API service
  description: My API
  contact:
    name: Fred
    url: https://gigantic-server.com
    email: Fred@gigagantic-server.com
  license:
    name: Apache 2.0
    url: https://foo.bar
  version: "0.0"
paths:
  /product/{text}:
    get:
      operationId: get
      parameters:
      - name: text
        in: path
        required: true
        schema:
          type: string
      responses:
        "200":
          description: get 200 response
          content:
            application/json:
              schema:
                type: string

【问题讨论】:

    标签: java swagger swagger-ui micronaut micronaut-client


    【解决方案1】:

    我不见了

    intercept-url-map:
          - pattern: /swagger-ui/**
            httpMethod: GET
            access:
              - isAnonymous()
          - pattern: /swagger/**
            access:
              - isAnonymous()
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多