Matt Rajca

Jul 01 2011

App Engine Notes

Earlier today, I released fb2cal, a web app that lets users view their Facebook friends’ birthdays right from a native calendaring client. Coming from a desktop development background, writing a web app on top of App Engine was a new experience for me. Some points to take away:

  • Extend templates to reuse large parts of common HTML code; think inheritance
  • Leverage the memcache when making large data store queries or performing network requests
  • To serve parts of a web app using HTTPS, add secure: always to the script handler in app.yaml

And lastly, to handle basic authentication in a subclass of RequestHandler:

auth = self.request.headers.get('Authorization')

if not auth:
    self.response.set_status(401, message="Authorization Required")
    self.response.headers['WWW-Authenticate'] = 'Basic realm="Secure Area"'
    return None

parts = auth.split(' ')
username_pass = base64.b64decode(parts[1]).split(':')

username = username_pass[0]
password = username_pass[1]

# validate username and password...

Overall, I was extremely pleased with how fast, easy, and inexpensive it is to host a fully-functional web app on App Engine.

3 notes

  1. mattrajca posted this
Page 1 of 1