【问题标题】:Adding Token header in micronaut client request在 micronaut 客户端请求中添加 Token 标头
【发布时间】:2021-05-13 03:13:12
【问题描述】:

在 micronaut 中,我有一个用例,我需要将 oauth2 访问令牌作为自定义标头(不是 Header Name='Authorization)添加到每个请求中。

目前,我正在获取令牌并向https://micronaut-projects.github.io/micronaut-security/latest/guide/#clientecredentialshttpclient 指定的每个请求添加授权标头。但我还必须为每个传出请求添加另一个标头,其值为令牌。所以,我使用 HttpClientFilter 来拦截请求,然后读取 Authorization Header,然后添加这个值为 token 的自定义标头。但这会导致并发问题。有时 ClientCredentialsHttpClientFilter 在 HttpClientFilter 之后被调用,在这种情况下我得到 null 作为令牌。

那么,有没有办法确保 ClientCredentialsHttpClientFilter 在 HttpClientFilter 之前被调用?

编辑:

当我通过 IDE 运行时,所有这些都可以正常工作。但是当我使用 native-image 时不会运行。

【问题讨论】:

    标签: java oauth-2.0 micronaut graalvm-native-image micronaut-security


    【解决方案1】:

    过滤器实现Ordered接口。

    只需覆盖getOrder() 方法并根据您需要的顺序设置值。

    【讨论】:

    • 感谢您的回答。但是,当我通过 IDE 运行应用程序时,它工作正常。但是当我创建一个原生图像,并且当我对该原生图像发出请求时,由于并发性,它再次给出了同样的错误。
    猜你喜欢
    • 1970-01-01
    • 2015-05-17
    • 1970-01-01
    • 1970-01-01
    • 2019-04-17
    • 1970-01-01
    • 1970-01-01
    • 2021-09-13
    • 2018-07-11
    相关资源
    最近更新 更多