作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我创建了一个 AppEngine 项目并使用 sample java project作为起点。我希望我的应用程序能够连接到云数据存储,因此我浏览了 getting started文档并将以下内容添加到骨架应用程序中:
datastore = DatastoreFactory.get().create(DatastoreHelper.getOptionsfromEnv()
.dataset(datasetId).build());
然后我构建并部署了应用程序 ( appcfg.sh -A <project> update target/appengine-try-java-1.0
) 并发出请求,并在日志中收到以下错误:
W 17:40:59.602 2015-05-20 200 0 B 4.12s /demo
172.26.42.164 - - [20/May/2015:14:40:59 -0700] "POST /demo HTTP/1.1" 200 0 - "Apache-HttpClient/4.2.5 (java 1.5)" "project-id.appspot.com" ms=4122 cpu_ms=4667 cpm_usd=0.000158 loading_request=1 instance=00c61b117c2949ed37017839e6c82982472c2c app_engine_release=1.9.21
W 17:40:59.394 com.google.api.services.datastore.client.DatastoreFactory makeClient: Not using any credentials
W 17:40:59.575 [s~project-id/1.384441993309831713].<stderr>: Error while doing datastore operation
W 17:40:59.575 [s~project-id/1.384441993309831713].<stderr>: DatastoreException(Login Required): beginTransaction 401
我需要在 AppEngine 上设置什么才能让它连接到数据存储区吗?它似乎无法在环境中找到任何凭据。
最佳答案
如果您在 App Engine 上运行,则可以使用 native 数据存储区 API ( docs )。
使用 native API,您不需要连接,它“就在那里”,例如:
DatastoreService datastore = DatastoreServiceFactory.getDatastoreService();
Entity foo = new Entity("Foo");
foo.setProperty("bar", "baz");
datastore.put(foo);
云数据存储往往指的是打包为外部应用程序服务的数据存储版本。
关于java - 如何从 AppEngine 访问 Cloud Datastore?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30377002/
我是一名优秀的程序员,十分优秀!