【问题标题】:Message format in Channel API (GAE)?Channel API (GAE) 中的消息格式?
【发布时间】:2012-12-10 17:45:53
【问题描述】:

我正在 GAE 上开发一个 HTML5 协作画布绘图工具。本质上,人们通过通道 API 绘制、发送他们的坐标和他们的动作到 GAE,然后其他人收到更新。

根据 GAE 文档的要求,我的 javascript 代码中有一个函数来收集从服务器接收到的消息:

socket.onmessage= function (message) {
    var s=message.data;
    //Extract X,Y,motion out of s and Draw(x,y,motion)
};

但是,我发送的消息数据实际上是 x 和 y 坐标和一个字符串(“start”/“drag”),形式为:

x=505.0000457763672&y=111.66667175292969&type=start

我实际上对这个“消息”类中的任何变量或特性一无所知,如果我在someone else's source code 中没有看到它,我也不知道使用“message.data” - 这实际上有记录吗任何地方?我希望能够使用子字符串功能来有效地提取 3 个值,但它们似乎不适用于 message.data。

是否有关于消息类的完整成员函数/类/变量文档的详细文档?

非常感谢任何输入!

【问题讨论】:

    标签: google-app-engine channel-api


    【解决方案1】:

    我不会说它记录得很好,但它记录在通道 API 文档中: https://developers.google.com/appengine/docs/python/channel/javascript

    它确实说消息对象有一个名为“数据”的参数。

    您应该能够很好地使用 javascript 子字符串功能,但除非您显示您的代码,否则没有人可以帮助您。

    【讨论】:

    • 谢谢!最终让 substring 函数工作,但不幸的是,在通道 API 上实时绘制接口的最终结果不太理想
    • @EukyChan 很好,你成功了。只是好奇,你遇到了什么问题? Channel API 太慢或丢失消息?
    • 谢谢 - 我想实现一个(可能是天真的)协作实时绘图板,画布上绘制的每个点都通过 Channel API 向其他用户推送请求。结果实现为一行发送了大约 20 个 POST 请求,因此效率非常低,最终使用单个笔画进行了实现(例如,您在鼠标释放时将整个笔画作为单个形状发送)
    猜你喜欢
    • 2011-07-19
    • 2014-04-16
    • 1970-01-01
    • 2015-07-13
    • 2013-04-09
    • 2012-01-23
    • 2017-07-12
    • 2011-10-19
    • 1970-01-01
    相关资源
    最近更新 更多