问题标签 [micronaut-rest]
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 应用程序从 2.5.XX 更新到 3.0.0。根据 Micronaut 文档,项目 reactor 是推荐用于响应式编程的响应式库。
当我卷曲终点时curl -X 'GET' 'http://localhost:8081/product/search/ffff' -H 'accept: application/json'
,它会走向无限。
由于我在系统上有错误,所以 returnFlux.error(new GlobalException(throwable));
应该返回 500 内部系统错误,但是,它进入了无限
我已经集成了rabbitMQ,并且rabbitMQ 生产者已关闭。iProductManager.findFreeText(text)
由于 rabbitMQ 生产者未运行,因此引发异常。它应该抛出一个异常并且应该调用全局错误处理,而不是无限。但是没有按预期工作
此方法永远不会因错误而被调用。
日志
entity - Micronaut 3.0.3 中的 GormEntity 问题
我有一个使用 hibernate-gorm 构建的简单 micronaut 3.0.3 应用程序。
尝试发送这样的 GET 请求时出现以下错误http://localhost:8080/?commentId=1
此代码适用于 Micronaut 版本 2.5.12。我搜索了有关此的迁移指南,但找不到有关该部门任何更改的任何提及。
邮政指令:
后控制器:
删除所有设置器或仅删除字符串类型的设置器时,它可以工作。
这是任何感兴趣的人的github链接。
任何的意见都将会有帮助。
micronaut - 流文件阻塞事件循环?
micronaut 2.0.1 中的项目具有公开某些资源的功能。资源通过 HTTP 与来自另一个服务的 InputStream 一起流式传输。
不幸的是,应用程序会重新启动,因为运行状况端点返回的速度不够快。
StreamedFile
通过互联网返回文件时是否有可能阻止事件循环?在本地一切正常。
编辑:
我想我找到了返回字符串文件的解决方案,但不幸的是,它的速度要慢得多。
我仍然不明白如何正确流式传输字节资源。
java - 如何在 micronaut 应用程序中禁用 http 服务器
我有一个 micronaut 应用程序,它应该在一个容器中运行 SQS 侦听器,在另一个容器中运行常规 HTTP 服务器。如何通过配置实现这一点?我可以使用以下应用程序属性来启用/禁用侦听器:
如何启用/禁用 Web 服务器?
PS:我能够在 Spring Boot 中使用spring.main.web-application-type=NONE
. 但我无法在 micronaut 中找到相关设置。
java - 在 Micronaut 过滤器中向传入请求添加标头
我正在编写一个服务,目前需要实现自己的 JWT 令牌验证。这稍后将由服务之前的一层处理。
为此,我打算使用HttpServerFilter
接口拦截请求:
HttpFilter
界面说明:
要修改请求过滤器,可以包装它(使用 io.micronaut.http.HttpRequestWrapper 或按原样沿链传递
所以我尝试用这个类包装请求:
但是,mutate
上述两种方法都在HttpRequest
接口中使用相同的默认实现:
该文档指出过滤器支持请求的修饰和响应的修改。这里的装饰和修改有什么区别?
我想要的最终结果是我想解析一个 JWT 令牌,确保它是有效的,然后将一个字段从令牌添加到一个新的标头中,并通过以下方式从控制器中检索该标头:
如何使用 Micronaut 过滤器实现这一目标?
java - 在这里,我尝试使用 micronaut 微服务进行简单的 CRUD 操作。但是遇到一些错误
我正在尝试使用 java 中的 micornaut 微服务进行一些粗略的操作。但是遇到这个错误,请如果有人可以帮助我。
POM 文件 -
服务 - 服务接口
服务实施
应用程序.yml 文件
所以我附上了程序中使用的所有依赖项和其他文件。如果有人可以提出更好的方法来解决这个问题。
kotlin - 使用 micronaut 验证来自其他模块的模型会给出“没有 bean 自省存在”。
当我尝试将 POST 方法主体中的对象发送到 micronaut 应用程序时,我得到: 模型:无法验证 com.example.Model。不存在 bean 自省。请将@Introspected 添加到类并确保启用了 Micronaut 注释处理。
该项目的结构包括两个模块main和model。主模块依赖于模型模块。
主模块仅包含DefaultTestController类:
它的build.gradle.kts文件如下所示:
模型模块包含:
- 型号类:
- 子模型类:
它的build.gradle.kts文件如下所示:
gradle.properties文件:
当我将模型和子模型移动到主模块时,一切都按预期工作。当我从DefaultTestController@Validated
中删除和@Valid
注释时,它也可以工作,但电子邮件未经过验证。
我尝试了添加和删除各种依赖项的许多不同可能性(例如,此处描述:Validating the POJO record with Micronaut not working and Cannot validate view.model.product.ProductSearchCriteria. No bean introspection present. Please add @Introspected to the class)但没有按预期工作。有人可以看看并帮我解决这个问题吗?
编辑:这是带有代码示例的存储库:github.com/stefanik36/Micronaut-Introspection-Problem。它包含src/test/kotlin/com/example/DefaultTestControllerTest.kt
将在Model
和SubModel
类移动到主模块时通过的测试。
java - 在 Micronaut 中使用 JWT 令牌验证进行休息端点单元测试
使用 micronaut 创建受 micronaut-jwt 安全保护的休息端点
安全模型
安全规则
上述端点受声明保护owner
,creator
并且maintainer
我正在使用身份服务器 4 ( https://github.com/IdentityServer/IdentityServer4 ) 来管理身份,并且当用户登录时,它在访问令牌中包含以下声明
上面的终点是寻找那些属性
对于运行真正的应用程序,它运行良好。我正在尝试使用 micronaut httpclient 编写测试用例。但不确定如何使用 micronaut 测试框架进行测试
我试过的东西
它创建一个令牌,但不包含上述访问令牌所需的所有验证。
我们如何在 micronaut 中进行受 JWT 令牌保护的休息端点单元测试
身份验证提供程序
micronaut - 在 micronaut 中 Spring 的 @WebMvcTest 等价物
我怎样才能在@MicronautTest 中只运行控制器而不运行存储库/服务,只像在春天@WebMvcTest
那样模拟它们?
所以我可以用这种方式测试它