我一直在使用带有云端点的 Java 应用引擎来创建 REST api,但突然遇到了这个错误:
警告:没有 rpc 格式的 API hylytit 版本 v1 的发现文档
我正在尝试将 Javascript 客户端库加载到网页中以执行 GET
调用。在网络控制台中,我看到了这个:
GET http://localhost:8888/_ah/api/discovery/v1/apis/hylytit/v1/rpc?fields=methods%2F*%2Fid&pp=0 [HTTP/1.1 404 未找到 5 毫秒]
我不熟悉什么是 RPC 发现文档,也无法在网上找到很多与 App 引擎和 RPC 具体相关的内容。这就是我调用客户端库的方式:
<script type="text/javascript">
function start() {
console.log("test.html onLoad function called.");
var ROOT = "http://localhost:8888/_ah/api";
gapi.client.load("hylytit", 'v1', function() {
var req = gapi.client.hylytit.listUrl();
req.execute(function(data) {
//Do something with the data.
});
}, ROOT);
}
</script>
<script type="text/javascript" src ="https://apis.google.com/js/client.js?onload=start">
</script>
Eclipse 的 App Engine 插件似乎没有生成正确的 RPC 发现文档。知道如何解决这个问题吗?
编辑: 我已经按照@Jenny 的建议更新到最新版本的 Google Eclipse 插件和 App Engine SDK。我还检查了所有云端点方法是否都按照@Ashish 的建议返回了有效类型,但是当我将它作为本地服务器运行时继续出现相同的错误。
有趣的是,当我部署到 App Engine 时没有问题,只是在本地。
最佳答案
Willma,您最近是否更新了 App Engine Eclipse 插件或 SDK?如果这样做,请尝试更新 Eclipse 的 Google 插件。这些插件需要与 Google Cloud Endpoint Client 库生成同步才能在 Eclipse 上正常工作。一旦你更新了这两个插件,客户端库生成就应该可以工作了。再次将应用程序部署到 App Engine,然后您应该能够根据上面显示的 URL 再次验证。
关于java - App Engine RPC 发现文档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18190456/