2012-12-10 33 views
3

我正在研究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座標的一個字符串的形式(「開始」 /「拖動」):

x=505.0000457763672&y=111.66667175292969&type=start 

我其實沒有任何變量或功能的想法在這個「消息」類,我不知道該如果我沒有在someone else's source code中看到它,請使用'message.data' - 這是真正的你記錄在任何地方我希望能夠使用子字符串功能來有效提取3個值,但它們似乎不適用於message.data。

是否有關於消息類的完整成員函數/類/變量文檔的詳細文檔的任何想法?

任何輸入是非常感謝!

回答

1

我不會說這是有據可查的,但它在渠道API文檔記載: https://developers.google.com/appengine/docs/python/channel/javascript

它專門針對說的消息對象有一個名爲「數據」參數。

你應該可以使用javascript子字符串功能,但除非你顯示你的代碼,否則沒有人能夠幫助你。

+0

謝謝!最終得到的子字符串函數可以工作,但通道API上的實時繪圖接口的最終結果不是太理想,不幸的是 –

+0

@EukyChan很好,你有它的工作。只是好奇,你遇到了什麼問題?頻道API太慢或丟失消息? – dragonx

+0

謝謝 - 我想實現一個(天真的,也許)協作的實時繪圖板,畫布上繪製的每個點通過Channel API將請求推送給其他用戶。由此產生的實現發送了大約20個POST請求的單行,因此效率非常低,最終實現了單個筆劃的實現(例如,您將鼠標釋放的整個筆畫作爲單個形狀發送) –