대학생 코딩 과제 대행 java, python, oracle 스물 다섯 번째

https://open.kakao.com/o/s3aMpbA
이번에는 지난번에 했던 파이썬으로 소켓통신을 하는 과제를 의뢰받았다.
소켓을 통해서 파일을 서버에 업로드 하는 간단한 과제였다.

먼저 서버

#-*- coding: utf-8 -*-
import socket

#서버 소켓 오픈
server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
port = 12345
server_socket.bind(("", port))
server_socket.listen(5)

print ("TCP Upload Server Waiting for client on port " + str(port))
while True:
    client_socket, address = server_socket.accept()
    print("I got a connection from ", address)
    req = client_socket.recv(1024)
    print("Request :  ", req)
    decodedReq = req.decode("utf-8")
    print("decode : ", decodedReq)
    fileTitle = decodedReq.split('!@#$%^&*')[0]
    fileContent = decodedReq.split('!@#$%^&*')[1].encode("utf-8")
    print('title : ', fileTitle)
    print('content : ', fileContent)
    uploadFile = open(fileTitle, "wb")
    uploadFile.write(fileContent)
    uploadFile.close()
    client_socket.close()


그리고 더 간단한 클라이언트

import socket
import sys


s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
s.connect((sys.argv[1], int(sys.argv[2])))
uploadFile = open(sys.argv[3], 'rb')
s.send(sys.argv[3])
s.send('!@#$%^&*')
s.send(uploadFile.read())
uploadFile.close()
s.close()
print('Done!')



먼저 서버를 돌리고
클라이언트를 돌릴 때 host port 업로드할파일
순서대로 해주면 된다.
아래는 실행영상이다.



댓글

이 블로그의 인기 게시물

Spring Boot Actuator readiness, liveness probes on k8s

About Kafka Basic

sneak peek jitpack

About JVM Warm up

About ZGC

About G1 GC

About idempotent

Install Jenkins In AWS EC2

erwin DM 으로 Oracle 연결 할 때 뜨는 에러들 해결

Java - HashMap (feat. LinkedList, Tree.. maybe Later)