def get(self): invitationCode = self.request.get('invitation_code') if not self.isValidInvitationCode(invitationCode): error_output(self, "<html><body>邀请码无效</body></html>", "text/html", 400) return auth = OAuthHandler(CONSUMER_KEY, CONSUMER_SECRET) verifier = self.request.get("oauth_verifier").strip() twitterId = self.request.get("twitter_id").strip() if verifier == "" or twitterId == "": authUrl = auth.get_authorization_url() success_output(self, page_goto_sina_oauth % \ {'url':authUrl, 'invitation':invitationCode.encode('UTF-8'), 'token':auth.request_token.key, 'secret':auth.request_token.secret}) else: request_token = self.request.get("request_token") request_secret = self.request.get("request_secret") auth.set_request_token(request_token, request_secret) accessToken = auth.get_access_token(verifier) binding = SyncBinding.getOrInsertByInvitationCode(invitationCode) binding.lastTweetId = None binding.twitterId = twitterId binding.sinaAccessToken = accessToken.key binding.sinaAccessSecret = accessToken.secret binding.put() success_output(self, ''' <html><body> <p>Twitter与新浪微博同步绑定成功</p> <p>如需要修改绑定,请重新访问邀请链接</p> </body></html> ''')
def syncAll(CONSUMER_KEY, CONSUMER_SECRET): bindings = SyncBinding.all() bindings.order("nextSyncTime") for binding in bindings: if binding.nextSyncTime > time.time(): return synchronousMsg(CONSUMER_KEY, CONSUMER_SECRET, binding);
def syncAll(CONSUMER_KEY, CONSUMER_SECRET): bindings = SyncBinding.all() bindings.order("nextSyncTime") for binding in bindings: if binding.nextSyncTime > time.time(): return synchronousMsg(CONSUMER_KEY, CONSUMER_SECRET, binding)
def get(self): invitationCode = self.request.get('invitation_code') if not self.isValidInvitationCode(invitationCode): error_output(self, "<html><body>邀请码无效</body></html>", "text/html", 400) return auth = OAuthHandler(CONSUMER_KEY, CONSUMER_SECRET) verifier = self.request.get("oauth_verifier").strip() twitterId = self.request.get("twitter_id").strip() if verifier == "" or twitterId == "": authUrl = auth.get_authorization_url() success_output(self, page_goto_sina_oauth % \ {'url':authUrl, 'invitation':invitationCode.encode('UTF-8'), 'token':auth.request_token.key, 'secret':auth.request_token.secret}) else: request_token = self.request.get("request_token") request_secret = self.request.get("request_secret") auth.set_request_token(request_token, request_secret) accessToken = auth.get_access_token(verifier) binding = SyncBinding.getOrInsertByInvitationCode(invitationCode) binding.lastTweetId = None binding.twitterId = twitterId binding.sinaAccessToken = accessToken.key binding.sinaAccessSecret = accessToken.secret binding.put() success_output( self, ''' <html><body> <p>Twitter与新浪微博同步绑定成功</p> <p>如需要修改绑定,请重新访问邀请链接</p> </body></html> ''')
def get(self): content = """ <html><body><table border="1"> <tr><th>Invatation Code</th><th>Twitter ID</th><th>Last synced tweet</th><th>Next sync(GMT)</th> <th>Sina token</th><th>Sina secret</th></tr> """ bindings = SyncBinding.all() for binding in bindings: content += "<tr><td>%s</td><td>%s</td><td>%s</td><td>%s</td><td>%s</td><td>%s</td></tr>" % \ (binding.invitationCode, binding.twitterId, binding.lastTweetId, time.ctime(binding.nextSyncTime), binding.sinaAccessToken, binding.sinaAccessSecret) content += "</table></body></html>" success_output(self, content)