文件处理服务端

Posted 0b0s

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了文件处理服务端相关的知识,希望对你有一定的参考价值。

import socket,os,json,struct
SHARE_DIR=rD:python13期网络编程文件处理SHARE
class FtpServer:
    def __init__(self,host,port):
        self.host=host
        self.port=port
        self.server=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
        self.server.bind((self.host,self.port))
        self.server.listen(5)
    def serve_forever(self):
        print(server starting...)
        while True:
            self.conn,self.client_addr=self.server.accept()
            print(self.client_addr)
            while True:
                try:
                    data=self.conn.recv(1024)
                    if not data:break
                    params=json.loads(data.decode(utf-8))
                    cmd=params[0]
                    if hasattr(self,cmd):
                        func=getattr(self,cmd)
                        func(params)
                    else:
                        print(33[45mcmd not exists33[0m)
                except ConnectionResetError:break
            self.conn.close()
        self.server.close()
    def get(self,params):
        filename=params[1]
        filepath=os.path.join(SHARE_DIR,filename)
        if os.path.exists(filepath):
            headers = {filename: filename,
                       md5: 123fvs54,
                       file_size: os.path.getsize(filepath)}
            headers_json = json.dumps(headers)
            headers_bytes = headers_json.encode(utf-8)
            self.conn.send(struct.pack(i, len(headers_bytes)))
            self.conn.send(headers_bytes)
            with open(filepath,rb)as f:
                for line in f:
                    self.conn.send(line)
    def put(self):
        pass
if __name__ == __main__:
    server=FtpServer(127.1.2.3,8999)
    server.serve_forever()

以上是关于文件处理服务端的主要内容,如果未能解决你的问题,请参考以下文章

论如何设计一款端对端加密通讯软件

在 PHP 重定向期间处理片段标识符

SpringCloud系列四:Eureka 服务发现框架(定义 Eureka 服务端Eureka 服务信息Eureka 发现管理Eureka 安全配置Eureka-HA(高可用) 机制Eur(代码片段

是否有一种方法可以将实时记录的音频片段连续发送到Flutter.io中的后端服务器?

译文:18个实用的JavaScript代码片段,助你快速处理日常编程任务

python常用代码片段总结