我正在使用 Windows 套接字在 C++ 中实现 FTP 客户端。我已成功连接到端口 21 上的服务器,并在数据端口上使用“STOR Sample.txt”命令以 PASV 模式传输文件。问题是我无法告诉服务器传输完成(我想发送信号以关闭数据连接),以便我可以在我的控制连接上从服务器接收“226 Transfer OK”。
此外,我没有通过 recv() 从服务器接收任何内容。我认为这是因为服务器仍在侦听数据连接。
我正在使用 Windows 套接字在 C++ 中实现 FTP 客户端。我已成功连接到端口 21 上的服务器,并在数据端口上使用“STOR Sample.txt”命令以 PASV 模式传输文件。问题是我无法告诉服务器传输完成(我想发送信号以关闭数据连接),以便我可以在我的控制连接上从服务器接收“226 Transfer OK”。
此外,我没有通过 recv() 从服务器接收任何内容。我认为这是因为服务器仍在侦听数据连接。
看看这个: STOR 命令的正确用户
当您发送 PASV 时,您返回要连接的端口,然后您告诉服务器使用 STOR 将数据存储在哪里,然后您连接到 PASV 命令返回的端口并发送数据 - 完成后关闭第二个套接字并继续发送原始命令。