请求参数过多,因此包装成一个请求对象git
服务端:github
@GetMapping(value = "/readInfos") public List<ExctractInfoVO> readHotels(Search search){ return this.service.readInfos(search); }
API app
@FeignClient(name = "server")//服务名 public interface Server { @GetMapping(value = "/XXX/XXX/XXXX/readHotels", consumes = MediaType.APPLICATION_JSON_UTF8_VALUE) public List<ExctractInfoVO> readInfos(Search search); }
客户端ide
@Service public class ServiceImpl implements Service{ @Resource Server server; @Override public List<SearchResult> readInfos(Search search){
Double bd09Lon1 = hotelSearch.getBd09Lon1();
Double bd09Lat1 = hotelSearch.getBd09Lat1();
hotelSearch = getLimit(hotelSearch, bd09Lon1, bd09Lat1, distance);this
List<ExctractInfoVO> list = server.readInfos(search);spa
} }
运行报错code
400:Request method 'POST' not supportedserver
上网查了一下 说了一堆源码的东西,结果就是少了一个包, 在服务端添加包对象
<dependency> <groupId>io.github.openfeign</groupId> <artifactId>feign-httpclient</artifactId> </dependency>
继续运行虽然没有报错可是数据没有收到blog
请求
在客户端断点
服务端断点
而后各类资料翻看,只是在服务端上面加个@RequestBody, 完美解决,虽然不知道会不会有bug 可是至少如今是解决的了
@GetMapping(value = "/readInfos", consumes = MediaType.APPLICATION_JSON_UTF8_VALUE) public List<ExctractInfoVO> readInfos(@RequestBody Search search){ return this.service.readInfos(search); }
总得来讲 就是添加一个包,一个注解