用c++编写简单的类似ftp的客户端/服务器应用程序

Writing simple FTP-like client/server app in C++

本文关键字:ftp 客户端 应用程序 服务器 c++ 简单      更新时间:2023-10-16

我希望写一个简单的类似ftp的应用程序,包括在微软环境中的客户端和服务器。我说类似FTP,因为我不需要遵循FTP协议,我只是想建立一个客户端,可以发送一个目录+文件字符串到服务器,然后让服务器发送回文件的内容,或者发送文件本身。

现在我的伪代码是这样的:

FTP客户端:-打开插座-发送文件字符串到服务器-其他所需功能-接收响应

FTP服务器:-打开插座-每个传入连接的新线程-接收文件字符串-检查文件字符串的格式是否正确以及文件是否存在-向客户端发送响应以告知字符串是否有效-要么打开并读取文本文件,要么传输文件本身-将文件或文件内容发送回客户端

这个大体框架有意义吗?有什么我可能遗漏的吗?我在想我可能需要一个套接字分别用于状态和传输。关于如何进一步进行这个项目的任何提示或一般方向将不胜感激。

经过大量的研究和浏览其他已建立的FTP服务器后,我最终完成了这个项目。

我最终将项目简化为一个骨架版本,但也在非常基本的级别上使用FTP协议,这意味着创建一个套接字来发送命令,以及一个套接字来发送文件。

所以我的应用程序的基本结构可以递归目录,并使用这两个套接字和一个基本的循环结构发送目录中的所有文件。