尝试执行此代码,但它已经给我以下错误:
在C:\ Users \ USER \ Desktop \ script.pl第35行的字符串中使用未初始化的值$ site。
#!/usr/bin/perl
use LWP::UserAgent;
use File::Slurp;
use warnings;
use strict;
use HTTP::Request;
open (THETARGET, "<list.txt") || die "[-] Can't open the file";
my @TARGETS = <THETARGET>;
close THETARGET;
my $link=$#TARGETS + 1;
OUTER: foreach my $site(@TARGETS){
chomp($site);
}
my $ua = LWP::UserAgent->new;
$ua->timeout(10);
my $url = my $site;
my $picture = "teest.png";
my %args;
my $field_name = "file[]";
my $buf ;
my $buf_ref = $args{'buf'} || \$buf ;
my $value = read_file( $picture , binmode => ':raw' , scalar_ref => 1 );
my $response = $ua->post( $url,
Content_Type => 'form-data',
Content => [ $field_name => ["$picture"] ]
);
print "$site";
答案 0 :(得分:-1)
我认为你期望的是$ site从for循环继承的值,但因为它在 for循环中被定义,所以它的范围仅限于那个循环。也许你想要的是所有下面的代码也在这个循环中。否则,$ site的值在创建后的两行中不再存在。你的行
my $url = my $site;
然后创建一个 new 变量$ site(这是undef),并且该undef值用于设置$ url,因此它也是undef。我怀疑你最初有
my $url = $site;
然后添加额外的&#34;我的&#34;解决之前的错误。
我希望这会对你有所帮助。