FTP服务器的上传与下载

本文介绍了FTP服务器的原理及功能实现,包括FTP服务简介、客户端与服务器端的交互过程,以及如何在本地进行FTP服务器的模拟测试。通过FTPHelper进行文件上传和下载的代码实现,详细展示了上传文件到E盘及从服务器下载文件到指定路径的操作流程。
摘要由CSDN通过智能技术生成

强烈推荐一个大神的人工智能的教程:http://www.captainbed.net/zhanghan

前言

     这是前三周的事情了,拿到现在来总结真是惭愧了,某个周四把任务都做完了,看了会代码有点乏了,就开始鼓捣,想起来自己对数据库的语句操作一直不是很熟悉,所以就找了个教程敲了一遍操作语句,估计是组长看我没事了,周五给我安排了个任务,将文件从CDN服务器上down下来,上传到Preview服务器的对应目录下。下面记录一下我在本地测试的内容。

FTP服务简介

     FTP全称File Transfer Protocol,文件传输协议,是TCP/IP协议组中的协议之一,FTP协议分为两部分:FTP服务器和FTP客户端,我们都已经知道了文件传输用到的端口为20和21。FTP服务器的默认端口是21,FTP 客户端首先和FTP服务器的TCP 21端口建立连接,通过这个通道发送命令,客户端需要接收数据的时候在这个通道上发送PORT命令。 PORT命令包含了客户端用什么端口接收数据。在传送数据的时候,服务器端通过自己的TCP 20端口连接至客户端的指定端口发送数据。有个简单的实例就是大米用的管理资料的服务器,这个服务器担当的是服务器端的角色,而我们用的电脑担当则是客户端的角色。

功能实现

    1.准备本地测试的工具:FTPserver

                                            

   2.把本地模拟成服务端,端口为21,用户名为anonymous,密码为****,左下角的即为当前的IP地址,这些信息用于对用户授权,我们操作FTP服务器都是需要授权的,格式为:ftp://用户名:密码@FTP服务器IP或域名:FTP命令端口/路径/文件名。

   3.准备FTPHelper,封装上传与下载的代码

 

public class FTPHelper
    {
        #region Variables

        private FtpWebRequest reqFTP = null;

        private string userName { get; set; }

        private string password { get; set; }

        //private string ftpUri { get; set; }

        private NetworkCredential certficate;

        public FtpStatusCode statusCode { get; set; }

        public string statusDescription { get; set; }

        #endregion

        #region Constructor

        public FTPHelper(string ftpUserName, string ftpPassword)
        {
            this.userName = ftpUserName;
            this.password = ftpPassword;
            certficate = new NetworkCredential(ftpUserName, ftpPassword);
        }

        #endregion

        #region UploadOverMove

        public bool UploadOverMo
评论 17
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值