我正在拼命尝试从Java访问Google云端存储。我的挑战是我应该创建一个通用库,并且基于浏览器的auth是不可能的。
无论我做什么,它总是告诉我“……
我相信最近我们亲自讨论过这个问题实际上是通过使用Google Service帐户来解决的,如下所示: https://developers.google.com/accounts/docs/OAuth2ServiceAccount
凭据是这样构建的:
String emailAddress = "123456789000-abc123def456@developer.gserviceaccount.com"; JsonFactory JSON_FACTORY = JacksonFactory.getDefaultInstance(); HttpTransport httpTransport = GoogleNetHttpTransport.newTrustedTransport(); GoogleCredential credential = new GoogleCredential.Builder() .setTransport(httpTransport) .setJsonFactory(JSON_FACTORY) .setServiceAccountId(emailAddress) .setServiceAccountPrivateKeyFromP12File(new File("MyProject.p12")) .setServiceAccountScopes(Collections.singleton(SQLAdminScopes.SQLSERVICE_ADMIN)) .build();