Skip to content

Instantly share code, notes, and snippets.

@nhunsaker
Created July 19, 2017 22:15
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save nhunsaker/a6c279f1b79a11be65bb105034687498 to your computer and use it in GitHub Desktop.
Save nhunsaker/a6c279f1b79a11be65bb105034687498 to your computer and use it in GitHub Desktop.
import tornado.httpclient
import json
import logging
from lib.rig import settings
from handlers.base import BaseHandler
class HomeHandler(BaseHandler):
@tornado.web.asynchronous
def get(self):
email = self.request.headers.get('X-Forwarded-Email')
client = tornado.httpclient.AsyncHTTPClient()
url = settings.get('api_url') + 'users?email=' + email
request = self.prepare_request(url, 'GET')
client.fetch(request, self.handle_request)
def handle_request(self, response):
users = json.loads(response.body)
whitelisted = users['total'] > 0
js_globals = {
'env': settings.env(),
'fbAppId': settings.get('fb_app_id'),
'whitelisted': whitelisted
}
self.render('index.html', js_globals=js_globals)
def prepare_request(self, url, method, body=None):
gateway_token = settings.get('api_auth_token')
headers = {
"Content-Type": "application/json",
"X-Auth-Token": gateway_token
}
request_params = {
"headers": headers,
"body": body,
"url": url,
"method": method,
}
return tornado.httpclient.HTTPRequest(**request_params)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment