2012-03-31 14 views
0

私はfacebookアプリを作成しています.JavaScript APIを使用して、ユーザー名やその他の詳細をjs変数に格納しています。このアプリはPythonで作成されています(Google App Engineを使用しています)。私はPythonでjs変数にアクセスし、その値をDbに格納したいと考えています。これを行う方法?Pythonのjavascript変数へのアクセス方法

class MainPage(webapp2.RequestHandler): 
    def get(self): 
    self.response.out.write(""" 
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:fb="http://ogp.me/ns/fb#"> 
    <head> 
     <title>Captain Pandey</title> 
    </head> 
    <body> 
     <div id="fb-root"></div> 
     <script> 
     window.fbAsyncInit = function() { 
      FB.init({ 
      appId  : '185318768251247', 
      channelURL : 'http://localhost:8080/channel.html', 
      status  : true, 
      cookie  : true, 
      xfbml  : true, 
      oauth  : true, 
      }); 



     FB.getLoginStatus(function(response) { 
      if (response.status === 'connected') { 
      // the user is logged in and has authenticated your 
      // app, and response.authResponse supplies 
      // the user's ID, a valid access token, a signed 
      // request, and the time the access token 
      // and signed request each expire 
      var uid = response.authResponse.userID; 
      var accessToken = response.authResponse.accessToken; 
      FB.api('/me', function(apiResponse) { 
       var name = apiResponse.name; 
      }); 
      } 
      else if (response.status === 'not_authorized') { 
      // the user is logged in to Facebook, 
      // but has not authenticated your app 
      } 
      else { 
      // the user isn't logged in to Facebook. 
      } 
     }); 

     }; 

     (function(d){ 
      var js, id = 'facebook-jssdk'; if (d.getElementById(id)) {return;} 
      js = d.createElement('script'); js.id = id; js.async = true; 
      js.src = "//connect.facebook.net/en_US/all.js"; 
      d.getElementsByTagName('head')[0].appendChild(js); 
     }(document)); 
     </script> 
     <div class="fb-login-button" data-show-faces="true" data-width="200" data-max-rows="1" scope="email">Login to Facebook</div> 
    </body> 
</html> 
    """) 

とテンプレートを使用、それはデータを送信し、その要求のためのPythonハンドラを記述するAJAX要求を行うようにwebapp2を

+3

ご存じのようにJS変数はクライアント側に存在し、Pythonコードはサーバー側に存在します。それらのユーザーと通信する唯一の方法は、HTTP(AJAXなど)を使用することです。直接アクセスはありません。 – bereal

+0

Javascriptのどの変数を保存したいのか、どの時点でどの制御ロジックを使用するのかを示すコードをマークアップすると便利です。 –

答えて

3

デザインJavascriptのコードです。

関連する問題