Я пытаюсь подключиться через REST API к моему проекту DialogFlow. Это настольное Java-приложение, поэтому redirectURI имеет значение null.
Тем не менее, Google Dialogflow перенаправляет на страницу входа, поэтому я не могу автоматически извлечь нужный код. Вот код на данный момент:
ClientIdentifier clientIdentitifier = new ClientIdentifier(CLIENT_ID, CLIENT_SECRET);
OAuth2CodeGrantFlow ouauth2CodeGrantFlow = OAuth2ClientSupport.googleFlowBuilder(
clientIdentitifier, null, SCOPE)
.prompt(OAuth2FlowGoogleBuilder.Prompt.CONSENT)
.property(OAuth2CodeGrantFlow.Phase.AUTHORIZATION, OAuth2Parameters.STATE, "test")
.build();
String authorizationURL = ouauth2CodeGrantFlow.start();
Client client = ClientBuilder.newClient();
Response response = ClientBuilder.newClient()
.target(authorizationURL)
.request()
.get();
String code = response.readEntity(String.class);
TokenResult result = ouauth2CodeGrantFlow.finish(code, "test");
Код
содержит всю страницу входа в систему, поэтому вызов .finish (.,.) Возвращает исключение ProcessingException: Ошибка при запросе токена доступа. Статус ответа 400.
Но как я могу получить код напрямую, без перенаправления на логин?