c6 / app.py
Araeynn's picture
Update app.py
ea9e60f verified
raw
history blame
1.16 kB
import socketserver
import multiprocessing as mp
print("Started App.")
class TCPHandler(socketserver.StreamRequestHandler):
"""
The request handler class for our server.
It is instantiated once per connection to the server, and must
override the handle() method to implement communication to the
client.
"""
def handle(self):
# self.rfile is a file-like object created by the handler;
# we can now use e.g. readline() instead of raw recv() calls
self.bytes = self.rfile.read()
self.data = self.bytes.decode("utf-8")
with open("script.py", "w") as f:
f.write(self.data)
# Likewise, self.wfile is a file-like object used to write back
# to the client
self.wfile.write(self.bytes.upper())
HOST, PORT = "localhost", 9999
def serverActivate():
with socketserver.TCPServer((HOST, PORT), TCPHandler) as server:
server.serve_forever()
def start():
import gradio as gr
def op(name):
return ""
demo = gr.Interface(fn=op, inputs="textbox", outputs="textbox")
demo.launch(share=True)
mp.Process(target=start).start()
mp.Process(target=serverActivate).start()