/ / Znak specjalny zawarty jest w haśle i łamie URL - perl, curl, url-encoding

Znak specjalny jest zawarty w haśle i łamie adres URL - perl, curl, kodowanie adresów URL

Uruchamiam żądanie curl w moim skrypcie perl i jeśli hasło lub nazwa użytkownika zawiera jakikolwiek znak specjalny (i), to łamie adres URL. Daj mi znać, jak to rozwiązać.

 my $json="curl --user $userName:$password http://git.sample.com/rest/api/1.0/projects/TEAMS/repos/ ";

my $decodedJson = decode_json($json);

Odpowiedzi:

1 dla odpowiedzi № 1

Wreszcie zaimplementowałem sposób @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);