Code: Select all
@Bean
public Credential credential(@Autowired LocalServerReceiver localServerReceiver) throws GeneralSecurityException, IOException {
HttpTransport httpTransport = GoogleNetHttpTransport.newTrustedTransport();
// Load client secrets from your credentials JSON file
InputStream credentialsStream = Talespire.class.getResourceAsStream(GOOGLE_SHEETS_CLIENT_SECRET_JSON);
GoogleClientSecrets clientSecrets = GoogleClientSecrets.load(JSON_FACTORY, new InputStreamReader(credentialsStream));
// Set up authorization code flow
GoogleAuthorizationCodeFlow flow = new GoogleAuthorizationCodeFlow.Builder(
httpTransport, JSON_FACTORY, clientSecrets, SCOPES)
.setDataStoreFactory(new FileDataStoreFactory(new java.io.File("tokens")))
.setAccessType("offline")
.setApprovalPrompt("force")
.build();
return new AuthorizationCodeInstalledApp(flow, localServerReceiver).authorize("user");
}
Code: Select all
Error 400: bad_request
Relevante libs /Abhängigkeiten
LOCALERVERRECEIVER: Google-Oauth-Client-Jetty-1.34.1.jar
GoogleAuthorizoCoCodeFlow: Google-api-Client-1.35.2 < BR /> AuthorizationCododeinstalledApp: Google-Oauth-Client-Java6-1.34.1.jar < /p>
Bearbeiten: Während des Durchlesens diesen Beitrag trifft es mir, dass der AutorizationCodeinstalledApp nicht das ist Richtige Klasse, um das Anmeldeinformationsobjekt hier zu generieren (basierend auf ihrem Namen und der Tatsache, dass die Abhängigkeit in ihrem Namen "Java6" verwendet). Könnte dies der Fall sein und dass ich dafür eine andere Klasse verwenden muss? Und wenn ja, welches soll ich verwenden?