#java #spring-boot #spring-mvc #spring-cloud #spring-cloud-feign
#java #весенняя загрузка #spring-mvc #spring-cloud #spring-cloud-feign
Вопрос:
В прошлый раз, когда я публиковал, я получил ошибку токена доступа. Я также пробовал с шаблоном rest; все та же ошибка.
"timestamp": 1597323995055,
"status": 500,
"error": "Internal Server Error",
"message": "Error requesting access token.",
"path": "/api/dashboard"
}
Мой код выглядит следующим образом;
Controller.class
@RestController
@RequestMapping("/api/dashboard")
@AllArgsConstructor
public class LexcorpIntegrationController {
private final TestServicee testServicee;
@GetMapping
public List<IncidentTasksResponse> getIT() {
return testServicee.getFeign();
}
/*
Это Service.class
@Service
@AllArgsConstructor
public class TestServicee {
private final LexcorpProxy proxy;
private final RestTemplate restTemplate;
public List<IncidentTasksResponse> getIT() {
DateFilter dto = new DateFilter();
dto.setDate(null);
WrapperEntity wrapperEntity =
restTemplate.getForObject(
"http://im-sure-url-is-correct",
WrapperEntity.class,
dto);
List<IncidentTasksResponse> tasks = wrapperEntity.getList();
return tasks;
}
public List<IncidentTasksResponse> getFeign() {
DateFilter filter = new DateFilter();
filter.setDate(null);
return proxy.getAllIncidentTasks(filter);
}
}
Клиент.интерфейс
@Component
@FeignClient(name = "lexcorp", url = "url-is-correct")
public interface LexcorpProxy {
@PostMapping("/IncidentTasks")
List<IncidentTasksResponse> getAllIncidentTasks(DateFilter date);
}
Первое, что я хочу сказать, это то, что я использую 3rdPartyVpn для доступа к данным. Но другой код, который я написал (2)
сработало так, что здесь не тот случай.
1- Это Spring Cloud, поэтому он получает зависимости от другого микросервиса и т.д. Позже я добавил зависимости в pom.xml в любом случае.Все еще не сработало.
2- Попробуйте создать простое приложение feign в моем локальном. (в любом случае, другой также находится в моем локальном) Это сработало. Я могу получить данные из api.
3- Параметр, который я написал внутри клиентского метода, правильный.
Все ответы будут оценены. Я что-то упускаю? Мне помогло бы даже небольшое объяснение.
Ответ №1:
Я перепробовал все и не решил проблему. Вместо этого я использовал свое другое приложение.