ckfinder/_source/Connector/CommandHandlers/FileUploadCommandHandler.cs
(开头部分) 8KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
/*
* CKFinder
* ========
* http://ckfinder.com
* Copyright (C) 2007-2012, CKSource - Frederico Knabben. All rights reserved.
*
* The software, this file and its contents are subject to the CKFinder
* License. Please read the license.txt file before using, installing, copying,
* modifying or distribute this file or part of its contents. The contents of
* this file is part of the Source Code of CKFinder.
*/
using System;
using System.Web;
using System.Text.RegularExpressions;
namespace CKFinder.Connector.CommandHandlers
{
internal class FileUploadCommandHandler : CommandHandlerBase
{
public FileUploadCommandHandler()
: base()
{
}
public override void SendResponse( System.Web.HttpResponse response )
{
int iErrorNumber = 0;
string sFileName = "";
string sFilePath = "";
string sUnsafeFileName = "";
try
{
this.CheckConnector();
this.CheckRequest();
if ( !this.CurrentFolder.CheckAcl( AccessControlRules.FileUpload ) )
{
ConnectorException.Throw( Errors.Unauthorized );
}
HttpPostedFile oFile = HttpContext.Current.Request.Files[HttpContext.Current.Request.Files.AllKeys[0]];
if ( oFile != null )
{
sUnsafeFileName = System.IO.Path.GetFileName(oFile.FileName);
sFileName = Regex.Replace( sUnsafeFileName, @"[\:\*\?\|\/]", "_", RegexOptions.None );
if ( Config.Current.DisallowUnsafeCharacters )
sFileName = sFileName.Replace(";","_");
if ( sFileName != sUnsafeFileName )
iErrorNumber = Errors.UploadedInvalidNameRenamed ;
if ( Connector.CheckFileName( sFileName ) && !Config.Current.CheckIsHiddenFile( sFileName ) )
{
// Replace dots in the name with underscores (only one dot can be there... security issue).
if ( Config.Current.ForceSingleExtension )
sFileName = Regex.Replace( sFileName, @"\.(?![^.]*$)", "_", RegexOptions.None );
后面还有 190 行代码,购买后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。