Я хочу использовать API Java Google Drive. Я попробовал этот код:com.google.api.client.auth.oauth2.TokenResponseException: 401 Неавторизованный
public Drive getDriveService() throws GeneralSecurityException, IOException, URISyntaxException
{
HttpTransport httpTransport = new NetHttpTransport();
JacksonFactory JSON_FACTORY = new JacksonFactory();
GoogleCredential credential = new GoogleCredential.Builder()
.setTransport(httpTransport)
.setJsonFactory(JSON_FACTORY)
.setServiceAccountId("[email protected]")
.setServiceAccountPrivateKeyFromP12File(new java.io.File("C:\\buffer\\sonora project-3256770463ed.p12"))
.setServiceAccountScopes(Collections.singleton(SQLAdminScopes.SQLSERVICE_ADMIN))
.setServiceAccountUser("[email protected]")
.build();
Drive service = new Drive.Builder(httpTransport, JSON_FACTORY, null)
.setApplicationName("FileListAccessProject")
.setHttpRequestInitializer(credential).build();
return service;
}
Но я получаю эту ошибку:
An error occurred: com.google.api.client.auth.oauth2.TokenResponseException: 401 Unauthorized
Я использую эту конфигурацию:
Можете ли вы дать некоторое представление о том, как я могу это исправить ?
Я надеваю Думаю, ты можешь используйте setServiceAccountUser, если только его учетная запись администратора домена и вы не добавили учетную запись службы в учетную запись администратора, а пользователь, о котором идет речь, также является пользователем учетной записи администратора. – DaImTo
Можете ли вы дать общую ошибку и исключение, которое она бросает? – Coder