C#通过FTP获取服务端文件
一、简介
二、准备工作
1、FTP服务搭建
FTP服务端选用FileZilla Server,免费开源,简单好用,可以下载中文版的。下载地址:下载 - FileZilla中文网,也可以直接从网盘拿: https://pan.baidu.com/s/1Rss5J2I-3kqzc1qD0CbOcg?pwd=aufr 提取码: aufr。
2、安装配置
安装比较简单,略过不提,主要是有几个配置要注意下(附上参考文档,按照这里面的来基本不会有问题:用FileZilla搭建FTP服务器及相关问题 - Better - SegmentFault 思否):
编辑-设置-被动模式设置:

编辑-设置-SSL/TLS设置:

编辑-用户-General:

编辑-用户-Shared folders:

偶发出现550报错:

解决方法:编辑-设置-其他,勾选允许下载:

设置完成后记得启动服务。
三、客户端连接
1、参数
string host;//服务端url,如ftp://127.0.0.1
string username;//用户名,如root
string password;//密码,如123
string remoteFilePath;//下载文件路径,如file.db
string savePath;//保存文件路径,如D:\file.db
2、代码
FtpWebRequest request = (FtpWebRequest)WebRequest.Create(new Uri(new Uri(host), remoteFilePath));
request.Method = WebRequestMethods.Ftp.DownloadFile;
if (string.IsNullOrEmpty(username) && string.IsNullOrEmpty(password))
request.Credentials = null;
else
request.Credentials = new NetworkCredential(username, password);
using (FtpWebResponse response = (FtpWebResponse)request.GetResponse())
using (Stream responseStream = response.GetResponseStream())
using (FileStream fileStream = new FileStream(savePath, FileMode.Create, FileAccess.ReadWrite, FileShare.ReadWrite))
{
responseStream.CopyTo(fileStream);
}
四、总结
略。
C#通过FTP获取服务端文件的更多相关文章
- 项目开发中的一些注意事项以及技巧总结 基于Repository模式设计项目架构—你可以参考的项目架构设计 Asp.Net Core中使用RSA加密 EF Core中的多对多映射如何实现? asp.net core下的如何给网站做安全设置 获取服务端https证书 Js异常捕获
项目开发中的一些注意事项以及技巧总结 1.jquery采用ajax向后端请求时,MVC框架并不能返回View的数据,也就是一般我们使用View().PartialView()等,只能返回json以 ...
- java版gRPC实战之六:客户端动态获取服务端地址
欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...
- asp.net获取服务端和客户端信息
asp.net获取服务端和客户端信息 获取服务器名:Page.Server.ManchineName获取用户信息:Page.User 获取客户端电脑名:Page.Request.UserHostNam ...
- 客户端获取服务端自定义类数据 z
客户端获取服务端自定义类数据 问题一:超时问题,在最后获取数据的时候突然提示服务超时,服务已断开 解决:配置文件添加: <bindings> <wsHttpBinding> & ...
- jsp获取服务端的访问信息
获取服务端访问信息 public static String getUrl(HttpServletRequest request){ String url = ""; if(req ...
- JAVA Socket获取服务端信息
1.Socket.getInetAddress(),获取服务端地址. 2.Socket.getPort(),获取服务端端口.
- 获取服务端https证书
最近开发一个需求,涉及获取服务端https证书.一般进行https调用我们都不太关心底层细节,直接使用WebClient或者HttpWebRequest来发送请求,这两种方法都无法获取证书信息,需要用 ...
- js 获取服务端时间,并实现时钟
本例子以vue语法伪代码书写: 1,获取服务端北京时间 getRealTime() { let that = this; var xhr = new XMLHttpRequest(); if( !xh ...
- android 图片上传到服务端 文件损坏问题
在网上找的例子,怎么试都不行. 上传上去之后提示文件损坏,不过最后问题还是找到了. 是因为不能在写入流的byte中写入其他内容 这是网上的例子 如果是要在服务端取文件名,可以在这里写入 在服务端获取文 ...
- WCF学习心得--客户端获取服务端自定义类数据
因项目需求,需要一个WCF服务,赶鸭子上架吧!下面直接切入正题! 首先创建WCF应用程序,具体如何创建就不赘述了,网上一大篇,我主要说说自己遇到的问题 问题一:超时问题,在最后获取数据的时候突然提示服 ...
随机推荐
- Linux安装配置Go语言
Linux安装配置Go语言 官网:https://go.dev/dl/ 从官网下载,选择linux下载压缩包. sudo cp -r go/ /usr/local sudo gedit /etc/pr ...
- 如何高效发布Android AAR包到远程Maven仓库
本文同步发布于公众号:移动开发那些事如何高效发布Android AAR包到远程Maven仓库 1 背景 在Gradle 7.0之前的版本中,maven插件是发布AAR包到远程Maven仓库的主要工具. ...
- superset 相关视频(建议初学者开始刷2天视频,开眼界)
建议集中一段时间刷视频,不用具体知道怎么操作,先明白能干什么,大概在那里弄,达到什么效果,是否符合自己的预期,然后再根据具体遇到的问题,再找视频 另外,看的时候注意有版本的不同,具体操作时候,版本不同 ...
- VulNyx - Ceres 靶机
有80端口 访问看看 他这个挺奇葩的看了wp才知道 file.php的参数是file 他会自动给你加上php 也就是说file=secret.php读不到数据要file=secret才能读到数据 伪协 ...
- android主线程与子线程
创建子线程创建子线程 更多关于java线程的文章可以查看这两篇 线程1 创建线程的方法 在android中穿件子线程的方案很简单 创建子线程的几种方法 ///////第一种/////// class ...
- # Vue3.5常用特性整理
Vue3.5 发布已近半年,抽空整理下常用的新增/改动特性 响应式 Props 解构 Vue3.5 中 Props 正式支持解构了,并添加了响应式跟踪 设置默认值 使用 JavaScript 原生的默 ...
- 使用CMD命令导出和导入IIS站点配置信息
1.导出导入某个站点 1.1.导出应用程序池和站点 1.1.1.导出某个应用程序池配置 具体导出命令如下所示: %windir%\system32\inetsrv\appcmd list apppoo ...
- Q:xml 需要转义的字符
XML实体中不允许出现"&","<",">"等特殊字符,否则XML语法检查时将出错,如果编写的XML文件必须包含这些字符 ...
- 三种方式从jdbc中获取数据库表字段信息
一.整体代码 1.method1:执行select语句获取,select * from dims where 1 = 2 2.method2:执行show create table获取,show cr ...
- 我把deepseek等大模型接入了微信公众号,打造个人AI助手
前言 最近deepseek大模型可是火出了圈,给国产大模型公司点赞.于是乎去deepseek试了一下效果,奈何太多人使用了,问两句来一句 "服务器繁忙,请稍后再试",体验感实在太差 ...