Google App EngineのChannel APIに関する質問です。


channel.send_message()の処理で、InvalidChannelClientIdErrorというエラーが発生しています。環境は、ローカルです。
解決策をご存知の方がいらっしゃいましたら、ご教授頂けると幸いです。当方初級レベルです。

以下、これまでの経緯です。3番まで成功していることを確認しています。4番でエラーが発生しています。

0.クライアント側のhead要素に下記コードを埋め込み、他のjavascriptは全てbody要素内に書き込む。
<script src='/_ah/channel/jsapi'></script>
1.クライアント側からサーバー側に問い合わせ、tokenを作成し、データストアに保存した上で、クライアント側に返却
2.クライアント側で、受け取ったtokenを適当な要素に埋め込む
3.クライアント側で、2.のtokenを使用し、onopenをする。※コメント欄にに該当のソースがあります。
4.クライアント側からサーバー側に問い合わせ、サーバー側で、1で保存したデータストア上のtokenを第一引数としてchannel.send_message()を使用しましたが、下記エラーが発生しました。
InvalidChannelClientIdError

以上、よろしくお願い致します。

回答の条件
  • 1人2回まで
  • 13歳以上
  • 登録:2011/01/22 18:39:06
  • 終了:2011/01/29 18:40:03

回答(0件)

回答はまだありません

  • id:puriketu99
    var token = $("#token").text()
    var channel = new goog.appengine.Channel(token);
    var socket = channel.open({
    onopen : function(){
    // ソケットopen完了時(受信可となったタイミング)にコールされる処理
    alert("channel-api open!");
    alert(token);
    }
    , onmessage : function(message) {
    // メッセージを受信したときにコールされる処理
    // message.data が受信した文字列
    alert("channel-api get message!");
    alert(message.data);
    }
    , onerror : function(error) {
    // ソケットで何らかの異常が発生したときにコールされる処理
    // error.codeにエラーコード、error.descriptionに理由が入る
    // ※token の有効期限が切れた際にも呼ばれる
    alert("channel-api error!");
    }
    , onclose : function(){
    // ソケットが何らかの理由でクローズされたときにコールされる処理
    // ※token の有効期限が切れた際にも呼ばれる
    // ※試した範囲では、自分で socket.close()を呼んでもコールされなかった
    alert("channel-api close!");
    }
    });

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません