首页 > 解决方案 > 如何为 Image::Grab 提供 UA 属性?

问题描述

我尝试在使用Image::Grab时添加一些 UA 属性,例如:

my $fp = 'sha256$26328...';
my $pic = Image::Grab->new( ua => { ssl_opts => { SSL_fingerprint => $fp } } );

我也试过:

$pic->ua->ssl_opts( { SSL_fingerprint => $fp } ); 

UA (LWP) 似乎都没有正确设置。如何实现SSL_fingerprint设置?我需要它,因为站点的证书有一些链缺陷,并且没有指定指纹,我无法安全地连接它。

标签: perllwp-useragent

解决方案


要设置 SSL 选项,您需要将 2 个参数传递给 的ssl_opts方法LWP::UserAgent:选项的名称及其值。因此,您应该这样做:

$pic->ua->ssl_opts( SSL_fingerprint => $fp ); 

在您的代码中,您正在传递对ssl_opts( { SSL_fingerprint => $fp }) 的哈希引用。当将单个参数传递给 时ssl_opts,此参数应为选项的名称,并且函数返回与此名称关联的值。


推荐阅读