【发布时间】:2018-06-19 06:59:53
【问题描述】:
注意:这里使用的术语订阅者和订阅来自反应流规范。
在基于 Spring Boot Webflux 的微服务中考虑以下 @RestController 方法。
@GetMapping(path = "/users", produces = MediaType.APPLICATION_JSON_VALUE)
public Flux<TradingUser> listUsers() {
return this.tradingUserRepository.findAll();
}
@GetMapping(path = "/users/{username}", produces = MediaType.APPLICATION_JSON_VALUE)
public Mono<TradingUser> showUsers(@PathVariable String username) {
return this.tradingUserRepository.findByUserName(username);
}
这里“谁/什么”将充当“订阅者”? 我假设 Spring Boot 框架提供了一个订阅者(?) 有人可以提供有关此的详细信息或任何链接吗?
假设我使用 postman/curl/browser 之类的客户端调用上面的 restful 端点,那么在这种情况下,客户端如何向响应式服务器发出请求信号? (只有 Subscriber 对 Subscription 对象有句柄,使用 request(n) 方法发出需求信号。但是,由于 Subscriber 可能也在 Spring Boot 框架实现的服务器端,实际客户端如何发出需求信号?)我显然错过了一些东西。
【问题讨论】:
-
你上面的控制器代码是
Publisher。你的邮递员/浏览器是Consumer -
@pvpkiran - 对不起,伙计,您的评论没有任何价值。问题清楚地询问订阅者是谁/是什么,而不是消费者。
标签: spring-boot spring-webflux reactive-streams