2012-12-10 2 views
3

저는 GAE에서 HTML5 협업 캔버스 그리기 도구를 사용하고 있습니다. 기본적으로 사람들은 채널 API를 통해 GAE에 자신의 좌표와 동작을 전송하고 다른 사람들이 업데이트를받습니다.채널 API (GAE)의 메시지 형식은 무엇입니까?

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

그러나, 나는 보낸다 메시지 데이터가 실제로 x 및 y 좌표와 다음 GAE 문서의 요구에 따라

, 나는 서버에서받은 메시지를 수집하는 내 자바 스크립트 코드의 기능을 가지고 하나의 문자열의 형태로 (/ "드래그" "시작") :

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

그것은 특히 메시지 개체는 '데이터'라는 매개 변수가 말하는가.

자바 스크립트 하위 문자열 기능을 사용할 수 있어야합니다. 코드를 표시하지 않으면 어느 누구도 도움을 줄 수 없습니다.

+0

감사합니다. 결국 하위 문자열 기능을 사용할 수있게되었지만 채널 API의 실시간 드로잉 인터페이스의 최종 결과는 불행히도 이상적이지 않습니다. –

+0

@EukyChan 잘 했으니 까. 궁금 해서요, 당신이 겪고있는 문제는 무엇입니까? 채널 API가 너무 느리거나 메시지가 손실 되나요? – dragonx

+0

감사합니다. 캔버스에 그려진 모든 지점에서 채널 API를 통해 다른 사용자에게 요청을 보내는 협업 실시간 게시판을 구현하고 싶었습니다. 결과 구현은 한 줄에 약 20 건의 POST 요청을 보내서 매우 효과적이지 않아 개별 획으로 구현하는 결과를 가져 왔습니다 (예 : 마우스를 한 번 클릭하면 전체 스트로크를 보낼 수 있음) –

관련 문제