0

在我的 Quarkus 应用程序中,我需要向另一台服务器发出 ah http 请求,其中Authorization需要传递值。

我正在使用反应式休息客户端并尝试使用@HeaderParam("Authorization")自定义标头:

@Path("/api")
@ApplicationScoped
@RegisterRestClient
@RegisterProvider(value = RestClientExceptionMapper.class)
public interface InternalService {
  @POST
  @Path("/xxx")
  @Produces({APPLICATION_JSON})
  @Consumes({APPLICATION_JSON})
  Uni<List<String>> Abc(
      @HeaderParam("Authorization") String bearerVal,
      List<String> values);
}

这没用。

在客户端,我可以确认bearerVal设置正确Bearer xxx

在服务器端,我可以确认收到了请求,但是Authorization没有设置 header 值。

我想知道这里缺少什么?如何调试底层 http 客户端使用的标头值?

4

1 回答 1

0

您使用的是哪个版本的 Quarkus?

如果您使用 2.5 或更高版本,您可以使用以下命令启用日志记录请求和响应:

quarkus.rest-client.logging.scope=request-response
quarkus.log.category."org.jboss.resteasy.reactive.client.logging".level=DEBUG

有关更多详细信息,请参阅 REST 客户端反应式指南中的记录流量 部分。

于 2022-01-08T16:42:24.190 回答