Skip to content

Instantly share code, notes, and snippets.

@Averroes
Averroes / example1.py
Created April 10, 2015 17:04
creating a simple rest based interface
import time
_hello_resp = '''\
<html>
<head>
<title>Hello {name}</title>
</head>
<body>
<h1>Hello {name}!</h1>
</body>
@Averroes
Averroes / resty.py
Created April 10, 2015 17:04
creating a simple rest based interface
# resty.py
import cgi
def notfound_404(environ, start_response):
start_response('404 Not Found', [ ('Content-type', 'text/plain') ])
return [b'Not Found']
class PathDispatcher:
def __init__(self):
@Averroes
Averroes / echoclient.py
Created April 10, 2015 17:05
creating a tcp server
from socket import socket, AF_INET, SOCK_STREAM
s = socket(AF_INET, SOCK_STREAM)
s.connect(('localhost', 20000))
s.send(b'Hello\n')
resp = s.recv(8192)
print('Response:', resp)
s.close()
@Averroes
Averroes / echoserv.py
Created April 10, 2015 17:05
creating a tcp server
from socketserver import BaseRequestHandler, TCPServer
class EchoHandler(BaseRequestHandler):
def handle(self):
print('Got connection from', self.client_address)
while True:
msg = self.request.recv(8192)
if not msg:
break
self.request.send(msg)
@Averroes
Averroes / echoserv1.py
Created April 10, 2015 17:06
creating a tcp server
from socketserver import BaseRequestHandler, TCPServer
class EchoHandler(BaseRequestHandler):
def handle(self):
print('Got connection from', self.client_address)
while True:
msg = self.request.recv(8192)
if not msg:
break
self.request.send(msg)
@Averroes
Averroes / echoserv2.py
Created April 10, 2015 17:06
creating a tcp server
from socketserver import StreamRequestHandler, TCPServer
class EchoHandler(StreamRequestHandler):
def handle(self):
print('Got connection from', self.client_address)
# self.rfile is a file-like object for reading
for line in self.rfile:
# self.wfile is a file-like object for writing
self.wfile.write(line)
@Averroes
Averroes / echoserv3.py
Created April 10, 2015 17:07
creating a tcp server
from socketserver import StreamRequestHandler, TCPServer
class EchoHandler(StreamRequestHandler):
def handle(self):
print('Got connection from', self.client_address)
# self.rfile is a file-like object for reading
for line in self.rfile:
# self.wfile is a file-like object for writing
self.wfile.write(line)
@Averroes
Averroes / echoserv4.py
Created April 10, 2015 17:07
creating a tcp server
from socketserver import StreamRequestHandler, TCPServer
import socket
class EchoHandler(StreamRequestHandler):
timeout = 5
rbufsize = -1
wbufsize = 0
disable_nagle_algorithm = False
def handle(self):
print('Got connection from', self.client_address)
@Averroes
Averroes / echoserv5.py
Created April 10, 2015 17:08
creating a tcp server
# Echo server using sockets directly
from socket import socket, AF_INET, SOCK_STREAM
def echo_handler(address, client_sock):
print('Got connection from {}'.format(address))
while True:
msg = client_sock.recv(8192)
if not msg:
break
@Averroes
Averroes / threadedserv.py
Created April 10, 2015 17:08
creating a tcp server
from socketserver import StreamRequestHandler, TCPServer
class EchoHandler(StreamRequestHandler):
def handle(self):
print('Got connection from', self.client_address)
# self.rfile is a file-like object for reading
for line in self.rfile:
# self.wfile is a file-like object for writing
self.wfile.write(line)