1

トークンをコピーして入力ボックスに貼り付けてチャネルを開こうとしていますが、コンソールが返されます。

無効な + トークン。

localhost:8080/ のコードは次のとおりです。

<html>
  <head>
    <script type="text/javascript" src="https://talkgadget.google.com/talkgadget/channel.js"></script>
    <script>
      function OpenChannel(){
        channel = new goog.appengine.Channel(document.getElementById('Token').value);
        socket = channel.open();
        socket.onmessage = function(message){
          console.log(message);
        }
        socket.onopen = function(){
          connected = true;
          console.log('opened');
        }
        socket.onerror = function(err){
          console.log(err.description);
        }
        socket.onclose = function(){
          console.log('closed');
        }
      }
    </script>
  </head>
    <body>
      Token: <input id="Token"></input><br/>
      <button onclick="OpenChannel()">Open Channel</button>
    </body>
</html>

「localhost:8080/token?name=...」を開いてトークンを作成しています。これにより、チャネル トークンがページに書き込まれます。そのページの python クラスは次のとおりです。

class TokenPage(webapp2.RequestHandler):
  def get(self):
    token = channel.create_channel(self.request.get('name'))
    self.response.write(token)

私はドキュメンテーションの行をほぼコピーしたので、何が問題なのかわかりません。

解決:

交換

<script type="text/javascript" src="https://talkgadget.google.com/talkgadget/channel.js"></script>

<script type="text/javascript" src="/_ah/channel/jsapi"></script> .

4

1 に答える 1

1

やってみました:

channel = new goog.appengine.Channel(document.getElementById('Token').value);
于 2013-08-07T23:09:12.220 に答える