Plugins/DownFile.aspx.cs
(开头部分) 2KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using EKETEAM.Data;
using EKETEAM.FrameWork;
using System.IO;
public partial class DownFile : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
#region 下载文件参数及安全性检测
string fileName = eParameters.QueryString("name");
fileName = HttpUtility.UrlDecode(fileName);
string path = eParameters.QueryString("path");
if (path.IndexOf("..") > -1) path = "";//禁止越权上级目录
if (path.Length > 0) path = path.toUrlFormat();
if (path.Length < 10)
{
Response.Write("文件不存在!");
Response.End();
}
if (path.ToLower().IndexOf("upload/") == -1)
{
Response.Write("禁止其他目录文件下载!");
Response.End();
}
string ext = path.fileExtension();
if (eConfig.PreventExtensions.Contains(ext))
{
Response.Write("文件类型不允许下载!");
Response.End();
}
string filePath = Server.MapPath("~/" + path);
if (!File.Exists(filePath))
{
Response.Write("文件不存在或已被删除!");
Response.End();
}
#endregion
FileInfo fileInfo = new FileInfo(filePath);
Response.Clear();
Response.ClearContent();
Response.ClearHeaders();
Response.AddHeader("Content-Disposition", "attachment;filename=" + Server.UrlPathEncode(fileName));
Response.AddHeader("Content-Length", fileInfo.Length.ToString());
Response.AddHeader("Content-Transfer-Encoding", "binary");
Response.ContentType = "application/octet-stream";
Response.ContentEncoding = System.Text.Encoding.GetEncoding("utf-8");
Response.WriteFile(fileInfo.FullName);
Response.Flush();
Response.End();
后面还有 2 行代码,解锁后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明
AI 解读
登录后可用,每次 10 积分,解读结果公开显示在下面。
还没有人解读过这个文件。
