簡單的TCP伺服器與客戶端通訊

2021-08-10 17:22:34 字數 1817 閱讀 9182

tcp伺服器

import socket

def main():

# 建立套接字

tcp_socket = socket.socket(socket.af_inet, socket.sock_stream)

# 繫結埠

tcp_socket.bind(("", 8888))

# # 反射伺服器

# signal = tcp_socket.recv(1024)

## tcp_socket.send(signal)

# 監聽

tcp_socket.listen(128)

while true:

# 接收資訊

cilent_socket, cilent_addr = tcp_socket.accept()

print("接收到來自%s的資訊" % str(cilent_addr))

file_name = cilent_socket.recv(1024)

try:

file = open(file_name, "rb")

while true:

data = file.readline()

if data:

cilent_socket.send(data)

else:

break

except exception as error:

print("檔案不存在")

else:

file.close()

print("已傳送檔案")

break

cilent_socket.close()

ifname== 『main『:

main()

tcp客戶端

import os

import socket

def main():

# 建立套接字

tcp_socket = socket.socket(socket.af_inet, socket.sock_stream)

# 輸入目標伺服器ip port 還有檔名

server_ip = input("請輸入伺服器ip:")

server_port = int(input("埠號:"))

file_name = input("檔名")

# 建立連線

tcp_socket.connect((server_ip, server_port))

tcp_socket.send(file_name.encode())

# 開啟檔案

file = open(file_name, "rb")

# 記錄收到的位元組數

count = 0

# 迴圈接收資料

while true:

data = tcp_socket.recv(1024)

if data:

file.write(data)

count += len(data)

else:

file.close()

if count == 0:

print("檔案不存在")

os.remove(file_name)

else:

print("檔案傳輸完畢 斷開連線")

break

tcp_socket.close()

ifname== 『main『:

main()

伺服器和客戶端 tcp通訊

在vs2013的環境下,伺服器 如下 include include stdafx.h include pragma comment lib,ws2 32.lib using namespace std define buffer rev 1024 define buffer send 1024 i...

linux 伺服器 客戶端 tcp通訊的簡單例子

昨天弄了sublime之後沒有弄輸入中文的了,學生黨來著,剛好可以練練英語 英語渣渣,還要考六級 所以注釋都寫英文的 語法什麼的就別太深究了 伺服器端 start from the very beginning,and create greatness name chuangwei lin e ma...

TCP通訊應用例項 伺服器與單個客戶端通訊

更多資料 我的目錄 執行結果 伺服器部分 客戶端部分 伺服器部分 伺服器部分 include include include include include include include int tcpsock int newsock void finish void transfer 存放客戶端...