perl 从 http 请求中提取值

perl extract values from a http request

我有一个 perl 休息 API。当我的程序收到 http 请求时,我想提取上述请求中的值。

我使用以下代码进行转储

warn "\n\n  request : " . MyCT::Util::dumper($self->resp);

可以在日志文件中找到以下结果。 如何从此结果中提取 "standalone"?

Tue Feb 18 05:20:26 2020] [warn] [21783] [MyCT] 

request : $VAR1 = bless( {
  'outputSent' => 0,
  'headersSent' => 0,
  'autoFlush' => 0,
  'req' => bless( do{\(my $o = 196025568)}, 'MyCT::Base::Request' ),
  '_cookies' => {
    'sessionKey' => '1762839:c480474dd4f4623035e8f35b445e1aad:c9920499157cf9c2a7972f773d08b972:standalone'
  },
  'contents' => [],
  'active' => 1
}, 'MyCT::Base::Response' );

人们通常不会直接访问对象变量,而是使用对象 class 提供的访问器。

鉴于您没有提供有关 class 的信息,我们只剩下脆弱、容易出错的替代方案。

my $session_key = $self->resp->{_cookies}{sessionKey};

你有会话密钥,这只是在 : 上拆分并获得第四个字段的问题。

( split(/:/, $sesion_key) )[3]