2012-03-06 4 views
1

GWTでgwt-gae-channelライブラリ(v。0.4)を使用しているApp Engine Channel APIを使用していますが、チャネルの再作成をテストしようとしています有効期限が切れています(つまり、コード401でonErrorが呼び出されます)。
テストは次のとおりです。
- チャネル(clientID =とexpiration = 1分)を作成し、必要なトークンを取得するためにGWT RPCメソッドを使用します:createTestChannel(useremail)。
- のonError(...)が呼び出される( - ChannelFactory.createChannel(トークン、新しいChannelCreatedCallback(){...})とchannel.open(新しいMySocketListener(){...})
を呼び出します私はcreateTestChannel(useremail)を再度呼び出して(同じclientIDの新しいトークンを取得する)チャンネルをオープンしようとしますが、常にonError()とonClose()を呼び出します。
同じコードを使用してページを更新するか、新しいタブを開くと、最初のチャンネルの作成は正常ですが、各チャンネルの有効期限が切れた後は再作成できません。私も別のclientIDを試しましたが、うまく動作しません。Appengine JavaとGWT - チャネルを再作成して開くことができません

答えて

0

サーバーに新しいチャネルを作成し、新しいトークンを取得する必要があります。ドキュメントから:

トークンの有効期限は2時間です。クライアントがチャネルに2時間以上接続されている場合、ソケットのonerror()およびonclose()コールバックが呼び出されます。この時点で、クライアントは新しいトークンを要求するためにアプリケーションに対してXHR要求を行うことができます。

http://code.google.com/appengine/docs/java/channel/overview.html#Tokens_and_Security

+0

、魔女は、チャンネルを作成し、トークンを返します。しかし、私は新しいトークンを受け取った後、チャンネルを開くときに呼び出されるonError()とonClose()を取得します(サーバー側の例外はスローされません)。 –

+0

奇妙な。私は私の場合を休まなければならない。 – koma

+0

私は同じ問題があります。また、gwt-gae-channelライブラリもあります。私はトークンを再作成し、onError()とonClose()コールバックを取得します。 – Dominik

関連する問題