Server
No notes
Syntax:
Python
import socket import os import time class Server(): serverSocket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) serverPort = int(9999) serverHost = '127.0.0.1' file = '' def __init__(self): self.serverSocket.bind((self.serverHost, self.serverPort)) self.listen() def listen(self): while True: packet, address = self.serverSocket.recvfrom(512) mode = str(packet)[2:5] self.file = str(str(packet)[6:]).replace("'", "") if(mode == "RRQ"): self.sendResponse(address) else: self.receiveData() def receiveData(self): data = open("new1.jpg", "wb") while True: packet, server = self.serverSocket.recvfrom(512) if packet.__len__() == 512: data.write(packet) else: data.write(packet) break; def sendResponse(self, address): if os.path.exists(self.file): msg = "ACK" self.serverSocket.sendto(str(msg).encode(), address) self.sendData(address) else: msg = "ERROR: File does not exist." self.serverSocket.sendto(str(msg).encode(), address) def sendData(self, address): with open(self.file, "rb") as data: while True: packet = data.read(512) if packet != b"": self.serverSocket.sendto(packet, address) else: self.serverSocket.sendto(packet, address) break time.sleep(0.0005) s = Server()