short return resonse in core/hanler.py und add do_POST

master
serkus01 2 years ago
parent 18f66e3c38
commit 2e0c03ae0a

@ -77,9 +77,11 @@ class Handler(BaseHTTPRequestHandler):
def get_data(self): def get_data(self):
length = int(self.headers['content-length']) length = int(self.headers['content-length'])
data = self.rfile.read(length) data = self.rfile.read(length)
def do_POST(self): def do_POST(self):
print("do_POST:\n") print("do_POST:\n")
print(str(self.path), str(self.headers)) print(str(self.path), str(self.headers))
def do_HEAD(self): def do_HEAD(self):
print("do_HEAD:\n") print("do_HEAD:\n")
print(str(self.path), str(self.headers)) print(str(self.path), str(self.headers))
@ -113,25 +115,22 @@ class Handler(BaseHTTPRequestHandler):
# self.end_headers() # self.end_headers()
if self.path == "/": if self.path == "/":
# path root -> Return all DATA - (All Tree Portage) config.json as Json
# print("data:\t" + self.get_data()) # print("data:\t" + self.get_data())
self.r_t = main() self.r_t = main()
self.response() self.response()
elif self.path == '/ovelays': elif self.path == '/ovelays':
# Return List repositories
overlays = get_list_overlays() overlays = get_list_overlays()
#print(ovls) #print(ovls)
if overlays: # == "": if overlays: # == "":
overlays = "Error" overlays = "Error"
self.r_t = json.dumps({"repositories": overlays}) self.r_t = json.dumps({"repositories": overlays})
elif self.path == "":
with open('./favicon.png', 'rb') as f:
self.r_t = f.read()
elif self.path == '/logo.png':
pass
elif self.path.startswith("/?st_app="): elif self.path.startswith("/?st_app="):
#Parse Settings App -> Write paramets to config.json
config = load_config() config = load_config()
param = self.path.replace("/?st_app=", "") param = self.path.replace("/?st_app=", "")
list_param = param.split(',') list_param = param.split(',')
@ -147,6 +146,7 @@ class Handler(BaseHTTPRequestHandler):
print(param) print(param)
elif self.path.startswith("/find?pkg="): elif self.path.startswith("/find?pkg="):
# search list packages to Teamplates -> return Result
param = self.path.replace("/find?pkg=", "") #request['params']['name'] param = self.path.replace("/find?pkg=", "") #request['params']['name']
pk_list = [] pk_list = []
search_result = {} search_result = {}
@ -169,15 +169,18 @@ class Handler(BaseHTTPRequestHandler):
self.r_t = str(json.dumps(search_result)) self.r_t = str(json.dumps(search_result))
elif self.path == "/get_settings_app": elif self.path == "/get_settings_app":
#Return Settings App
self.r_t = str(json.dumps(load_config())) self.r_t = str(json.dumps(load_config()))
elif self.path == '/get_portage': elif self.path == '/get_portage':
# Return Tree portage <<Json>>
#self.r_t = str(sort_inatll_pkg()) #self.r_t = str(sort_inatll_pkg())
self.r_t = str(json.dumps(scan_config_portage())) self.r_t = str(json.dumps(scan_config_portage()))
else: else:
#Return Error 404
self.send_response(404) self.send_response(404)
self.end_headers() self.end_headers()
@ -187,8 +190,10 @@ class Handler(BaseHTTPRequestHandler):
# self.wfile.write(bytes(self.r_t, "utf-8")) # self.wfile.write(bytes(self.r_t, "utf-8"))
def response(self): def response(self):
if self.r_t != "": # return self.r_t to HTTP Rsponse
if self.r_t not "":
self._set_response() self._set_response()
# HTTP 2.0 response <<Bynary>> HTTP 1.* response <<Text>>
try: try:
return self.wfile.write(BytesIO(self.r_t).getvalue()) return self.wfile.write(BytesIO(self.r_t).getvalue())
except TypeError: except TypeError:

Loading…
Cancel
Save