简单的ftp下载器/ http代理
本文关键字:http 代理 下载 ftp 简单 | 更新日期: 2023-09-27 18:31:30
对于我正在处理的项目,我需要提供对我只有ftp访问权限的文件的http访问权限。这用于需要下载文件但仅支持 http 的外部服务。我在下面尝试了这段代码:但是 CPU/内存使用率飙升,它慢慢消失了。有什么建议吗?
using System;
using System.Web;
using System.Net;
using System.IO;
public class ftpproxy : IHttpHandler
{
// ftpproxy.ashx?src=ftp://username:password@server.com/staticfiles/foo.f4v
public void ProcessRequest (HttpContext context) {
WebClient wc = new WebClient();
string src = context.Request.QueryString["src"];
using (Stream instr = wc.OpenRead(src))
{
instr.CopyTo(context.Response.OutputStream);
}
}
public bool IsReusable {
get {
return false;
}
}
}
谢谢!
哦,这些是大文件(数百兆到几个演出)
你可以做的是使用来自Web客户端端的DownloadFile方法,WriteFile来自响应。
string src = context.Request.QueryString["src"];
var file = "X:'TEMP'TempFile...";
WebClient client = new WebClient();
client.DownloadFile(src, file);
Context.Response.WriteFile(file);
//Write code to clean File;