将Javascript库与Google App Engine集成

时间:2014-12-30 09:46:19

标签: javascript google-app-engine web twitch

刚开始学习网络编程(在Udacity上学习CS 253课程)。

我的问题是如何整合JS和谷歌应用引擎?我知道这可能是关于网络编程的一个基本问题,但我真的需要一些关于如何理解这个概念的指导。

我正在尝试将Twitch Javascript API合并到Google App Engine中。基本上,我想有一个小网站,用户可以通过Twitch登录,并将其信息存储到数据库中。我真的不明白这是怎么可能的,因为Twitch只有一个Javascript API。

这是我的脚本,它可以完美地连接到Twitch(来自他们的git页面上的示例):

<html>
<head>
  <meta charset="utf-8">
  <title>TwitchTV SDK Example App</title>
  <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>

  <script src="https://ttv-api.s3.amazonaws.com/twitch.min.js"></script>

  <script>
    window.CLIENT_ID = '';
    $(function() {
      // Initialize. If we are already logged in, there is no
      // need for the connect button
      Twitch.init({clientId: CLIENT_ID}, function(error, status) {
        if (status.authenticated) {
          // we're logged in :)
          $('.status input').val('Logged in! Allowed scope: ' + status.scope);
          // Show the data for logged-in users
          $('.authenticated').removeClass('hidden');
        } else {
          $('.status input').val('Not Logged in! Better connect with Twitch!');
          // Show the twitch connect button
          $('.authenticate').removeClass('hidden');
        }
      });


      $('.twitch-connect').click(function() {
        Twitch.login({
          scope: ['user_read', 'channel_read']
        });
      })

      $('#logout button').click(function() {
        Twitch.logout();

        // Reload page and reset url hash. You shouldn't
        // need to do this.
        window.location = window.location.pathname
      })

      $('#get-name button').click(function() {
        Twitch.api({method: 'user'}, function(error, user) {
          $('#get-name input').val(user.display_name);
        });
      })

      $('#get-stream-key button').click(function() {
        Twitch.api({method: 'channel'}, function(error, channel) {
          $('#get-stream-key input').val(channel.stream_key);
        });
      })

    });
  </script>

  <style type="text/css">
  .hidden {
    display: none;
  }
  </style>
</head>
<body>
  <h1>TwitchTV SDK Example App</h1>
    <div class="status">
      Status: <input readonly="readonly" size="60" val="Unknown"/>
    </div>
    <div class="authenticate hidden">
      <img src="http://ttv-api.s3.amazonaws.com/assets/connect_dark.png" class="twitch-connect" href="#" />
    </div>

    <h2 class="authenticated hidden">Authenticated</h2>
    <div class="authenticated hidden">
      <div id="logout">
        <button>Log Out</button>
      </div>

      <div id="get-name">
        <button>Get TwitchTV Name</button>
        <input readonly="readonly" size="50" value="Unknown"/>
      </div>

      <div id="get-stream-key">
        <button>Get TwitchTV Stream Key</button>
        <input readonly="readonly" size="50" value="Unknown"/>
      </div>

    </div>
</body>
</html>

如何在此客户端javascript和Google App Engine之间传递数据?谢谢!

1 个答案:

答案 0 :(得分:1)

非常广泛的问题。但总的来说,关于你的情况:

  • 您应该在App Engine应用程序上设置接收端(处理程序)。它将处理来自客户端JavaScript(Hello, world示例)
  • 的请求
  • 其次,您需要实际将数据发送到服务器。我看到你正在使用jQuery。为了调用我们在 Hello,world 示例中看到的服务器,您将编写如下内容:$.get('/', function(data) {console.log(data);})。这将调用服务器并将从服务器获得的消息打印到控制台。