PERL CGI CLI特殊字符问号

时间:2012-11-23 11:21:30

标签: perl

当我在CLI参数中使用问号字符(?)时,它不会填充值(使用http://search.cpan.org/dist/CGI/lib/CGI.pm#DEBUGGING)。即使它被逃脱了。

这根本不会填充“param”:

perl httpPost.pl param =“http://www.test.com/?user=test”

perl httpPost.pl param =“http://www.test.com/\?user=test”

这将返回字符直到?

1 个答案:

答案 0 :(得分:3)

您必须对参数进行URL编码,以便将特殊于URL的字符转换为%XX字符串。这些字符串将在另一侧解码。

CPAN上有许多模块可以帮助您进行网址编码。这里有几个:

  1. URL::Encode
  2. URI::URL
  3. 从广义上讲:Search MetaCPAN for url_encode