使用perl传递url中的%编码

时间:2014-09-16 07:47:36

标签: perl url cgi urlencode

我正在尝试使用CGI输入字段构建网址。其中一个字段包含%作为默认值。因此,网址的构建如下:

$syscmd = "http://myserver:myport/reports/rwservlet?server=rptsvr+report=$REPORT";
$syscmd .= "+Xprocess=\"$in{'Xprocess'}\"";

Xprocess变量包含%作为默认值,url变为如下所示:

:// MYSERVER:MyPort上/报告/ rwservlet服务器= rptsvr +报告= apu_downtime_p + Xprocess =%

现在我正试图遍历该网页,并且由于%未编码为%25,我面临的错误如下所示

REP-52006:指定的网址%22 %% 22无法解码。

请帮助您了解如何在构建网址时对%字符进行编码。

谢谢。

1 个答案:

答案 0 :(得分:0)

您应该使用%25来转义%。

下面,

http://meyerweb.com/eric/tools/dencoder/

在这种情况下,这可能很有用。

在您的perl代码中,您可以使用URI :: Encode(http://search.cpan.org/~mithun/URI-Encode-0.09/lib/URI/Encode.pm