加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

perl – 如何使用LWP发送POST数据?

发布时间:2020-12-15 21:17:25 所属栏目:大数据 来源:网络整理
导读:我想制作一个与 http://www.md5crack.com/crackmd5.php通信的程序。我的目标是发送一个哈希(md5)的网站,希望该网站能够破解。之后,我想显示哈希的明文。我的问题是将数据发送到网站。我查找了关于使用LWP的文章,但我仍然迷失了。现在哈希没有发送,还有一
我想制作一个与 http://www.md5crack.com/crackmd5.php通信的程序。我的目标是发送一个哈希(md5)的网站,希望该网站能够破解。之后,我想显示哈希的明文。我的问题是将数据发送到网站。我查找了关于使用LWP的文章,但我仍然迷失了。现在哈希没有发送,还有一些垃圾数据。我将如何发送一个特定的数据字符串到网站?
use HTTP::Request::Common qw(POST);  
use LWP::UserAgent; 


$ua = LWP::UserAgent->new();  
my $req = POST 'http://www.md5crack.com/crackmd5.php',[ 
 maxlength=> '2048',name=> 'term',size=>'55',title=>'md5 hash to crack',value=> '098f6bcd4621d373cade4e832627b4f6',name=>'crackbtn',type=>'submit',value=>'Crack that hash baby!',]; 
$content = $ua->request($req)->as_string; 

print "Content-type: text/htmlnn"; 
print $content;

解决方法

您正在发布错误的数据,因为您正在使用HTML来指定窗口小部件,并将其与实际发送的数据进行混合。更正的数据将是发送窗口小部件名称及其值:
term: 098f6bcd4621d373cade4e832627b4f6

相反,目前正在POST的数据是:

maxlength: 2048
name:      term
size:      55
title:     md5 hash to crack
value:     098f6bcd4621d373cade4e832627b4f6
name:      crackbtn
type:      submit
value:     Crack that hash baby!

更正程序:

use strict;
use warnings;

use LWP::UserAgent; 
use HTTP::Request::Common qw{ POST };
use CGI;

my $md5 = '098f6bcd4621d373cade4e832627b4f6';
my $url = 'http://www.md5crack.com/crackmd5.php';

my $ua      = LWP::UserAgent->new();
my $request = POST( $url,[ 'term' => $md5 ] );
my $content = $ua->request($request)->as_string();

my $cgi = CGI->new();
print $cgi->header(),$content;

您还可以使用LWP::UserAgent的post()方法:

use strict;
use warnings;

use LWP::UserAgent;
use CGI;

my $md5 = '098f6bcd4621d373cade4e832627b4f6';
my $url = 'http://www.md5crack.com/crackmd5.php';

my $ua       = LWP::UserAgent->new();
my $response = $ua->post( $url,{ 'term' => $md5 } );
my $content  = $response->decoded_content();

my $cgi = CGI->new();
print $cgi->header(),$content;

始终记得use strictuse warnings.这被认为是良好的做法,将节省您的时间。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读