Предоставление SecurityIdentity напрямую методу веб-службы Quarkus / RESTEasy - PullRequest
1 голос
/ 18 апреля 2020

Я использую Quarkus с RESTEasy для создания веб-службы, и мне нужен доступ к SecurityIdentity в некоторых моих методах.

Возможно получить его инъекцию, сделав службу RequestScoped:

@RequestScoped
@Path("/foo")
public class FooResource {
    @Inject
    public SecurityIdentity securityIdentity;

    @GET
    public Foos getFoos() {
        // use securityIdentity
    }
}

Но я бы предпочел иметь класс ApplicationScoped и вместо него предоставить SecurityIdentity методу. Примерно так:

@ApplicationScoped
@Path("/foo")
public class FooResource {
    @GET
    // This does not work, Quarkus tries to convert the request body to a SecurityIdentity.
    public Foos getFoos(SecurityIdentity securityIdentity) { 
        // use securityIdentity
    }
}

Возможно ли это? Есть ли волшебная аннотация c, которую я могу надеть, чтобы Кваркус ввел SecurityIdentity?

1 Ответ

2 голосов
/ 23 апреля 2020

Сохранение его введенным в поле будет по-прежнему работать с компонентами ApplicationScoped и быть безопасным для потоков

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...