问题标签 [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 中为集成测试配置数据库
我正在尝试在 micronaut 中编写集成测试。
我有一个控制器类:
我正在尝试为它编写一个集成测试,例如:
但我不断收到错误:
我放在“src/test/java/resources/”下的 application.yml 文件具有以下数据源实现:
我也将它包含在我的 build.gradle 文件中
有没有办法解决这个问题?
编辑:这是我的存储库类
spring - Micronaut 声明式 REST 客户端抛出错误 - @Introduction 方法拦截器丢失
当我为我的 Micronaut 声明式客户端自动装配客户端接口时,我收到此错误:
修复它的正确方法是什么?
细节
我有一个已建立的 Grails 应用程序,我最近从 3.x 升级到了 4.0.1。
这个应用程序有一个服务可以并行执行多个 REST 调用,我正在尝试添加一个使用新的 Micronaut HTTP 声明式客户端的新 REST 调用。
我将客户端库添加dependencies
到build.gradle
:
我的客户端界面如下所示(在 中src/main/groovy
):
我在以下位置配置了 URL application.yml
:
关于的消息@Introduction
让我认为 Micronaut 没有执行编译声明式客户端的过程。有没有一些
我还缺少什么?
更新:
我尝试将build.gradle
依赖项更改implementation
为 Micronaut 文档中compile
所示的,而不是 Grails 文档中所示的 。没有骰子。
更新 2:
我发现HttpClientIntroductionAdvice
在启动期间从未调用过构造函数。我不知道为什么它没有包含在我的项目中。IntelliJ 显示micronaut-http-client:1.1.4
在外部库中,并且设置为compile
范围。
spring-boot - 如何在 micronaut 客户端 @Header 中使用 Grails 环境设置?
我的 Grails 中有一个特定于环境的标头属性application.yml
,配置如下:
如何@Header
在 micronaut HTTP 声明式客户端中使用此设置?
我试过这个:
但我收到了这个错误:
此外,并非所有环境都需要此标头(在这种情况下,它将设置为空字符串)。@Header 会处理这个吗?还是我需要做一些不同的事情?
micronaut - 将 micronaut 项目转换为 micronaut servlet 后出现运行时错误
我正在尝试将 Micronaut-servlet API 用于现有的微服务。如果没有 servlet API,以下工作非常好
这是控制器
并且该服务具有逻辑,如果电影<->用户映射已经存在,则不保存任何数据并返回现有映射
存储库也很简单
在我删除之前,所有这些都可以正常工作
并将其替换为
implementation("io.micronaut.servlet:micronaut-http-server-jetty:1.0.0.M1")
更改后出现以下异常
如果我尝试保留这两个依赖项,那么我会得到 HTTPClient 注入的重复 bean 异常!
unit-testing - grails 中的 Micronaut 声明式客户端:我如何模拟它?
在对 Grails 服务进行单元测试时,模拟声明式 REST 客户端的正确方法是什么?
细节
我在我的 Grails 4 应用程序中使用 Micronaut 的声明式 HTTP 客户端。
我尝试使用 Ersatz 对客户端进行单元测试,但几天后我无法让它工作: 如何在 grails 测试环境中配置 Micronaut @Client?
现在,我正在尝试对使用它的服务进行单元测试,使用标准方法来模拟依赖项:
这给了我一个NoSuchBeanDefinitionException
.
我通过反复试验发现声明式客户端无法与def myRestClient
其他 Grails bean 一样使用。一定是@Autowired
。_
java - 如何使用 Micronaut 在 HttpClientFilter 中重试 HTTP 客户端请求?
我已经实现了一个 micronautHttpClientFilter
来为对 3rd 方服务的所有请求添加一个缓存的不记名令牌,但是这个令牌会定期过期。我想使用下游 API 重新进行身份验证,并在发生这种情况时重试请求,但似乎没有明显的方法可以做到这一点。到目前为止,我只是proceed
第二次调用,但这会导致Index out of bounds
抛出错误(我认为这是应该抛出的异常,但这里的 Micronaut 中似乎存在错误)。我所拥有的最小减少如下:
谁能提出正确的方法来做到这一点?
java - Micronaut HTTP 客户端 - 反序列化泛型类型 - 用于 API 测试
对于 API 测试,我必须使用 io.micronaut.http.client.HttpClient 解析请求的响应
我更喜欢使用下面给出的格式。
但它不起作用。尝试从响应中获取用户时出现类型转换错误
目前我正在使用ObjectMapper (Jackson),如下所示,
有没有办法直接使用TypeReference和HttpClient检索方法?或以任何其他方式将泛型类类型与HttpClient一起使用。
其他有用信息
示例响应
micronaut - Micronaut -> 合并 2 个异步 HttpClient 调用的结果
我一直在试验 Micronaut 的各种功能。我有几个问题。
1) 我对各种 API 有 2 次异步调用。如何像在 RxJava Observable.zip 中那样组合 2 个 API 的结果?
2) 我正在使用声明式客户端连接到 API。在这种情况下如何捕获异常?在 Netflix Feign Client 中,我们使用 FallBack Factory。我如何在 Micronauts 中做同样的事情。
rx-java - 如何在 Micronaut Http Client 中限制并行 http 请求
我正在做一个 micronaut 项目。我正在使用 micronaut 声明式 http 客户端调用一些外部 Web 服务。
我正在做的是每当我从一个消息队列中收到一条消息时,我都会将该数据从队列发布到外部服务。所以在队列监听器中我订阅了这个客户端代码。
现在的问题是外部服务提供商在一分钟内限制了请求速率。现在我想限制一次触发的请求数。我在 rxjava 和 micronaut 应用程序开发方面非常陌生。什么是更好的设计来限制从我的应用程序触发的并行请求。是否有任何 RxJava 方法来限制请求?或者我想在 httpclient 配置中进行任何配置更改。请帮忙。
java - 如何使用 micronaut http 客户端进行摘要身份验证?
我需要调用一个使用摘要身份验证机制的 api。
如何使用 micronaut http 客户端做到这一点?
我使用这个简单的 HttpClientFiler 轻松地使用基本身份验证进行身份验证应用程序:
但是我没有发现任何与摘要身份验证相同的事情。任何想法?