我需要帮助在本地计算机上运行时从非app引擎java应用程序访问Google云端存储,并计划在将来在vm上运行它。我目前相当迷失,并希望有一些如何做到这一点的例子(我用谷歌搜索但没有找到任何有用的东西)。
我一直在玩下面的内容,但是我真的不知道如何使用httpRequestInitializer。所以甚至无法编译它。
Credential cred = DatastoreHelper.getServiceAccountCredential(account,privateKeyFile);
DatastoreOptions options = new DatastoreOptions(" dataset"," something",httpRequestInitializer,cred);
非常感谢所有帮助或指导一些例子。
答案 0 :(得分:1)
使用适用于Java的Google API客户端库访问Google云端存储有一个很好的示例:https://cloud.google.com/storage/docs/json_api/v1/json-api-java-samples
以下是使用服务帐户设置凭据的基本代码:
String emailAddress = "YOUR-SERVICE-ACCOUNT-NAME@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(StorageScopes.DEVSTORAGE_FULL_CONTROL))
.build();