1. consul: 檢查調用方服務與被調用方服務是否在同一個consul; 2. swagger: 檢查swagger注釋是否清晰、恰當; 比如: @ApiImplicitParams(value = { @ApiImplicitParam(name = "A", value = "A", required = true), @ApiImplicitParam(name = "B", value = "B", required = true, paramType = "query"), @ApiImplicitParam(name = "C", value = "C", paramType = "query") }) 在swagger上調試時,會把A當作body類型的值進行傳遞,而不是query,因為A沒有被標志為paramType="query" 3. 參數: 檢查方法出入參是否統一,包括出入參類型,@RequestParam 里面的value、name等; 4. @EnableFeignClients: 檢查啟動類里的feign注解的參數配置,例如我們的feign接口都在包 cn.ucmed.package 里,那么我們就在啟動類里加注解:@EnableFeignClients({"cn.ucmed.package"}); 5. 依賴的jar包版本: 檢查調用方與被調用方,使用的feign接口所在的jar包版本是否一致。例如我們用的是packageA,需要檢查packageA的版本信息; 6. 檢查feign接口的實現是否正確,比如 @PostMapping(value = "/just/test"), 曾經我把value寫成了name,導致一直不能正常調用,value和path是等價的,和name不是。