hello.py 928 B

1234567891011121314151617181920212223242526272829303132333435
  1. import ujson
  2. import sys
  3. if sys.version_info[0] == 3:
  4. def encode(obj):
  5. return ujson.dumps(obj).encode('utf-8')
  6. else:
  7. def encode(obj):
  8. return ujson.dumps(obj)
  9. def json(environ, start_response):
  10. response = {"message": "Hello, World!"}
  11. data = encode(response)
  12. response_headers = [
  13. ('Content-type', 'application/json'),
  14. ('Content-Length', str(len(data)))
  15. ]
  16. start_response('200 OK', response_headers)
  17. return [data]
  18. def plaintext(environ, start_response):
  19. data = b"Hello, World!"
  20. response_headers = [
  21. ('Content-type', 'text/plain'),
  22. ('Content-Length', str(len(data)))
  23. ]
  24. start_response('200 OK', response_headers)
  25. return [data]
  26. def app(environ, start_response):
  27. path = environ['PATH_INFO']
  28. if path.startswith('/json'):
  29. return json(environ, start_response)
  30. else:
  31. return plaintext(environ, start_response)