使用ActionScript 3访问Google AppEngine Cloud端点?

时间:2013-03-28 23:48:33

标签: actionscript-3 google-app-engine google-cloud-endpoints

是否有人知道使用ActionScript 3访问Google AppEngine Cloud Enpoints的方法,而无需通过JavaScript层?我一直在使用文档和谷歌找到任何教程或示例,但没有找到任何有用的东西。

1 个答案:

答案 0 :(得分:2)

我们没有AS3客户端库,目前没有我知道的计划,因此您必须依靠HTTP来进行REST调用。

TLDR;使用API​​ Explorer

如果您访问

https://your-app-id.appspot.com/_ah/api/explorer

(将your-app-id替换为您的实际应用ID),然后您将被重定向到您自己的Google API Explorer自定义版本。

在其中,您可以单击各个API并查看所有可用方法的列表。在每个方法的页面中,您可以尝试形成请求,资源管理器将建议使用正确的值。

点击“执行”后,您的页面上将打印完整的HTTP请求(标题和全部)和响应,这将显示您要使用的命令。

如何使用发现文档

的说明

API的发现文档将包含构建请求所需的所有信息。

要查找调用API的根目录,请查看baseUrl密钥。它应该是这样的:

https://your-app-id.appspot.com/_ah/api/tictactoe/v1/

要弄清楚如何调用特定方法,每种方法都有描述,在发现文档中作为资源嵌套。例如,对于Tic Tac Toe Python sampleboard_get_move方法在name装饰器中有board.getmove @endpoints.api。这意味着方法getmove由资源board拥有。

如果查看“发现文档”中的resources.board.methods键,则可以看到getmove方法:

"getmove": {
 "id": "tictactoe.board.getmove",
 "path": "board",
 "httpMethod": "POST",
 "description": "Exposes...",
 "request": {
  "$ref": "TictactoeApiMessagesBoardMessage"
 },
 "response": {
  "$ref": "TictactoeApiMessagesBoardMessage"
 }
}

pathbaseUrl我们知道的请求相结合需要发送到

https://your-app-id.appspot.com/_ah/api/tictactoe/v1/board

httpMethod我们知道请求将使用HTTP方法POST

最后,要指定请求,我们会看到对架构的引用:

"$ref": "TictactoeApiMessagesBoardMessage"

查看发现文档中的schemas.TictactoeApiMessagesBoardMessage键,我们看到:

"TictactoeApiMessagesBoardMessage": {
 "id": "TictactoeApiMessagesBoardMessage",
 "type": "object",
 "description": "ProtoRPC message definition to represent a board.",
 "properties": {
  "state": {
   "type": "string"
  }
 }
}

所以我们知道有效负载必须包含一个名为state的字段,该字段必须是字符串。