使用具有 JWT 安全性和开放 API 的 Micronaut 2.2.1。控制器定义不起作用,如下所示
应用程序.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