我一直试图为我的Restapi暴露一个FaignClient。它将Pagable作为输入,并定义了PageDefaults。
控制器:
@GetMapping(value = "data", produces = MediaType.APPLICATION_JSON_VALUE)
@ApiOperation(value = "Get Data", nickname = "getData")
public Page<Data> getData(@PageableDefault(size = 10, page = 0) Pageable page,
@RequestParam(value = "search", required = false) String search) {
return service.getData(search, page);
}
这是我的假客户:
@RequestMapping(method = RequestMethod.GET, value = "data")
public Page<Data> getData(@RequestParam(name = "pageable", required = false) Pageable page,
@RequestParam(name = "search", defaultValue = "null", required = false) String search);
现在的问题是,无论我发送给假客户端的页面大小和页码如何,它都会应用页面默认值(0,10)。
当我直接呼叫rest服务时,它会工作:http://localhost:8080/data?size=30
我使用的是Spring Boot 2.1.4。释放和Spring的云格林威治。SR1。最近做了一个修复来支持分页(https://github.com/spring-cloud/spring-cloud-openfeign/issues/26#issuecomment-483689346). 然而,我不确定上面的场景是否没有涵盖,或者我遗漏了什么。
我认为你的代码不起作用,因为你在你的伪方法中使用了@RequestParam
注释Pageable
参数。
我对这种方法的实现如预期的那样有效。
客户:
@FeignClient(name = "model-service", url = "http://localhost:8080/")
public interface ModelClient {
@GetMapping("/models")
Page<Model> getAll(@RequestParam(value = "text", required = false) String text, Pageable page);
}
控制器:
@GetMapping("/models")
Page<Model> getAll(@RequestParam(value = "text", required = false, defaultValue = "text") String text, Pageable pageable) {
return modelRepo.getAllByTextStartingWith(text, pageable);
}
请注意,在我的例子中,在没有将PageJacksonModule
作为bean公开的情况下,Spring引发了异常:
InvalidDefinitionException:无法构造org的实例。springframework。数据领域第页
所以我不得不把它添加到项目中:
@Bean
public Module pageJacksonModule() {
return new PageJacksonModule();
}
我的工作演示:github。com/Cepr0/sb外挂客户端,可分页演示
Now that you are the proud owner of a Packt book, we have a number of things to help you to get the most from your purchase.
第一个twisted支持的诗歌服务器 尽管Twisted大多数情况下用来写服务器代码,但为了一开始尽量从简单处着手,我们首先从简单的客户端讲起。 让我们来试试使用Twisted的客户端。源码在twisted-client-1/get-poetry.py。首先像前面一样要开启三个服务器: python blocking-server/slowpoetry.py --port 10000 poetry
问题内容: 我正在使用需要支持以下方案的GWT应用程序: 服务器位于时区A 客户端的浏览器设置为时区B GWT应用程序配置为在时区C中显示日期/时间 由于GWT不支持Calendar,并且不存在对javascript时区的本地支持,因此我无法想到一个解决此问题的好方法。 你们有没有做过类似的事情,或者您知道我可以使用的任何好工具吗? 谢谢! 问题答案: 以我的经验,在处理gwt中的日期和时区时,以
我想知道如何将缓存配置添加到Vertx http web客户端。 使用Apache http客户端,我可以轻松地设置setCacheConfig 有什么想法吗?
我们需要在couchbase客户端和couchbase集群之间实现ssl通信。我正在使用spring数据couchbase客户端api与couchbase集群进行交互,这个api的问题是我没有找到任何属性在couchbase客户端上启用ssl,你能帮我在couchbase客户端上配置ssl吗。
我正在尝试为超媒体API实现一个spring android客户端,并以HAL格式响应。Spring HATEOAS参考文档描述了客户端服务遍历的实现,其灵感来自Traverson JavaScript库。我这样做: 但我在创建新的Traverson对象时遇到以下错误: 有人知道怎么修吗? 是否有其他/更好的方式支持android中的HAL响应?