
from http.server import HTTPServer, SimpleHTTPRequestHandler, test
import sys
import configparser

config = configparser.ConfigParser()

try:
    config.read('Server.ini')
    Cache = config['Server']['UseCache']
    portNo = int(config['Server']['Port'])
    
except:
    print('ini file missing using defaults')
    Cache = 'Nocache'
    portNo = 8089

class CORSRequestHandler (SimpleHTTPRequestHandler):
    def end_headers (self):
        self.send_header('Access-Control-Allow-Origin', '*')
        if Cache == 'Nocache':
            self.send_header("Cache-Control", "no-cache, no-store, must-revalidate")
            self.send_header("Pragma", "no-cache")
            self.send_header("Expires", "0")
        SimpleHTTPRequestHandler.end_headers(self)

if __name__ == '__main__':
    #test(CORSRequestHandler, HTTPServer, port=int(sys.argv[1]) if len(sys.argv) > 1 else 8080)
    print ('Serving on port..' + str(portNo))
    test(CORSRequestHandler, HTTPServer, port=portNo)
