我正在通过拖放尝试上传文件。对于这个ui方面我使用了blueimp文件上传插件和服务器端我使用的是相同的upload.cgi,我用于简单的浏览和文件上传。我发现我是面向是我的主要方法cgi hook方法没有被调用: -
$cgi = CGI->new(\&hook, "file_upload");
这里的控制不是挂钩方法。
sub hook
{
&logMsg("In Hook1");
my ($name, $buffer, $bytesRead, $data) = @_;
&logMsg("In Hook");
&logMsg("name=$name,bytesRead=$bytesRead");
if (defined $lastSeenName)
{
if (($name ne $lastSeenName) || ($bytesRead < $lastSeenTotal))
{
$subTotal += $lastSeenTotal;
}
}
else
{
$uploadSize = $ENV{'CONTENT_LENGTH'};
&logPct(0);
}
$lastSeenName = $name;
$lastSeenTotal = $bytesRead;
$fileSizeMap{$name} = $bytesRead;
$totalBytes = $subTotal + $bytesRead;
if ($uploadSize > 0)
{
my $curPct = int((100 * $totalBytes)/$uploadSize);
$curPct = 98 if ($curPct > 98);
&logPct($curPct);
}
}
当我使用我的旧样式浏览和上传文件钩子方法被调用。任何人都可以让我知道我错过了什么以及为什么钩子方法没有被调用。
谢谢, 和Manish