问题标签 [micronaut-client]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 在来自 Micronaut 休息端点的 JSON 中包含 null 和空属性
JSON 序列化的 Micronuat 默认配置JsonInclude.Include.NON_EMPTY
不包含空值或 null 值。但是,我需要包含空值和空值,所以我到目前为止所做的 -
分页模型
当我添加@JsonInclude(ALWAYS)时,它不会在 JSON 响应中包含NULL或EMPTY值,如下所示。
如果我添加下面的代码,它确实包含NULL或EMPTY值lastId
vendors
但是,它会引发如下异常
控制器
java - jackson:serializationInclusion: 总是导致 Consul 服务发现和 Micronaut 应用程序出错
注册杰克逊以将 NULL 和 EMPTY 值包含到导致错误的 micronaut 应用程序
例外
如果我删除jackson:serializationInclusion: ALWAYS
服务发现工作正常,但我需要此设置包括 NULL 和 EMPTY 值
java - Micronaut 声明式 http 客户端中的路由参数
我有一个使用声明性 Http 客户端的 API 网关,并尝试将路由参数传递给其他微服务应用程序,如下所示
@Client 上的路径path = "/sub-category"
对于此 URL 是正确的http://localhost:8081/60236833af7a1d49478d2bef/sub-category
Api 网关控制器
ISubCategoryOperation
在其他微服务中实现
但是,在下面的 CURL
永远不会达到终点,我错过了什么?
HTTP 客户端日志
HTTP 请求应该是http://localhost:8081/60236833af7a1d49478d2bef /sub-category
java - 带有@Secured(SecurityRule.IS_ANONYMOUS) 注释的 API URL 上带有声明性 Http 客户端的 401
当我们添加 Micronaut 安全性时,所有 URL 都受到保护。在使用@Secured(SecurityRule.IS_ANONYMOUS)
注释时仍然面临 401 异常
接口方法用表示@Secured(SecurityRule.IS_ANONYMOUS)
但仍不能转到控制器方法
Http客户端
控制器
卷曲
Http 客户端日志
java - Java Micronaut - 在我多次点击端点后抛出“javax.net.ssl.SSLHandshakeException”
我有一个简单的 micronaut 应用程序。
我有两个单独的端点,其中执行的方法将使用客户端调用 API(我已经尝试了来自“java.net.http.HttpClient”和“io.micronaut.http.client.RxHttpClient”的 http 客户端,但是发生同样的问题)。
当您在启动应用程序后点击任何端点时,该函数将按预期执行,其中客户端调用外部 API 并将响应作为字符串检索。如果您尝试再次访问相同的端点,它将抛出:
“javax.net.ssl.SSLHandshakeException:收到致命警报:handshake_failure。”
我认为这不是 API 服务器端的问题,原因如下:
- 当我使用两个单独的外部 API 访问两个单独的端点时会发生此问题
- 请求第一次通过没问题
- 我可以在邮递员中毫无错误地使用相同的 API - 只是当我与客户端调用它们时才会出现问题。
我的控制器:
我的客户端调用 API 的服务之一:
就像我说的,当我第一次点击端点时,响应从服务器返回,没有问题。
我已经尝试了以下文章并遵循了这些步骤,但没有任何改进。
https://www.baeldung.com/java-ssl-handshake-failures
如何解决 javax.net.ssl.SSLHandshakeException 错误?
有什么我想念的吗?
java - Micronaut 中基于环境的文件拾取
尝试根据环境使用不同的配置文件。例如
在开发环境中,我有以下文件
应用程序-dev.yml
对于另一个环境,我有以下配置
应用程序.yml
现在,当我在 intellj 中运行应用程序时,应用程序正在使用文件applicaiton.yml
. 它应该获取application-dev.yml
and 值url: 'https://localhost:5001/.well-known/openid-configuration/jwks'
,但它正在从 中获取值application.yml
。但是,它应该只从 dev 文件中选择该值,并且应该从中选择所有其他值application.yml
根据 micronaut 文档https://docs.micronaut.io/latest/guide/index.html#environments我需要设置micronaut.environments
当我在本地机器上运行应用程序时,它不应该选择application-dev.yml
. 如何设置环境
java - 如何将 io.micronaut.http.HttpRequest 转换为 CompletableFuture
我正在关注4 个低级客户端,我想调整示例以返回 CompletableFuture。我的最终目标是并行使用两个不同的端点。我是 Micronaut 的新手。我相信一种好的方法是创建两个 Micronaut 低级客户端,它们返回一个可完成的未来,然后使用 CompletableFuture.allOf().join() 加入两者
所以我将服务编码为
低级客户端为
例外是
有趣的是,声明式客户端并没有例外。
micronaut - 如何在 Micronaut 中获取反应流?
在 Spring Boot 中,对于 Webflux 项目,我们通过在 HTTP 请求中发送标头 - “Accept: application/stream+json”来请求数据流。
如果我们发送“Accept: application/json”,我们会得到一个有效的 Json。
然而,在 Micronaut 中,如果我发送“Accept: application/stream+json”,它会引发错误。
Micronaut 中的“Accept: application/stream+json”等价物是什么?
java - 使用 Micronaut 声明性 Http 客户端 MediaType.MULTIPART_FORM_DATA 发送图像不起作用
我正在使用 Micronaut 声明式客户端在其他微服务之间进行通信,如下所示
控制器方法
IProduct操作界面
API 网关控制器
当我提出请求时,请继续获取以下日志
卷曲
如果我Publisher<CompletedFileUpload>
从控制器中删除,端点工作正常。