Аз стартирам заявка за къдряне в моя perl скрипт и ако паролата или потребителското име съдържа някакъв специален символ (&), той прекъсва URL адреса. Моля да ме уведомите как мога да реша това.
my $json="curl --user $userName:$password http://git.sample.com/rest/api/1.0/projects/TEAMS/repos/ ";
my $decodedJson = decode_json($json);
Отговори:
1 за отговор № 1Накрая изпълних @simbabque начин WP::UserAgent
.
use LWP::UserAgent;
my $ua = new LWP::UserAgent;
my $req = new HTTP::Request(GET => "http://git.sample.com/rest/api/1.0/projects/TEAMS/repos/");
$req->authorization_basic($userName,$password);
my $response = $ua->request($req);
#handle error
unless ($response->is_success) {
die $response->status_line;
}
my $content = $response->decoded_content();
if (utf8::is_utf8($content)) {
binmode STDOUT,":utf8";
} else {
binmode STDOUT,":raw";
}
my $json=$content;
my $decodedJson = decode_json($json);