Created
October 14, 2017 21:01
-
-
Save shieldwed/0312c39fa486912060c68bfd314f2393 to your computer and use it in GitHub Desktop.
A simple python HTTP server which responds with the original request headers and request path
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env python | |
from http.server import BaseHTTPRequestHandler, HTTPServer | |
# HTTPRequestHandler class | |
class testHTTPServer_RequestHandler(BaseHTTPRequestHandler): | |
# GET | |
def do_GET(self): | |
# Send response status code | |
self.send_response(200) | |
# Send message back to client | |
message = bytes( | |
str(self.headers) + | |
"\n" + | |
self.requestline + | |
"\n" | |
, 'utf8') | |
# Send headers | |
self.send_header('Content-type','text/plain; charset=utf-8') | |
self.send_header('Content-length', str(len(message))) | |
self.end_headers() | |
# Write content as utf-8 data | |
self.wfile.write(message) | |
return | |
def run(): | |
print('starting server...') | |
# Server settings | |
# Choose port 8080, for port 80, which is normally used for a http server, you need root access | |
server_address = ('127.0.0.1', 8081) | |
httpd = HTTPServer(server_address, testHTTPServer_RequestHandler) | |
print('running server...') | |
httpd.serve_forever() | |
run() |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
🎉