- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试通过 WebDav 协议(protocol)访问远程服务器,更具体地说是 Perl 的 HTTP::DAV 模块。
根据其文档,与远程目录的耦合按以下方式进行:
use HTTP::DAV;
$d = HTTP::DAV->new();
$url = "http://host.org:8080/dav/";
$d->credentials(
-user => "pcollins",
-pass => "mypass",
-url => $url,
-realm => "DAV Realm"
);
$d->open( -url => $url )
or die("Couldn't open $url: " .$d->message . "\n");
我创建了一个本地 webdav 目录,并且可以通过 http 协议(protocol)
完美地访问它。
根据 HTTP::DAV
的文档,使用 Crypt::SSLeay
模块应该也有 https
支持。
Crypt::SSLeay
的文档为我们提供了在 LWP::UserAgent
模块内部使用的以下概要,从而为我们提供了通过 >https
协议(protocol):
use Net::SSL;
use LWP::UserAgent;
my $ua = LWP::UserAgent->new(
ssl_opts => { verify_hostname => 0 },
);
my $response = $ua->get('https://www.example.com/');
print $response->content, "\n";
我的问题是:如何组合 HTTP::DAV 和 Crypt::SSLeay
模块以便通过 WebDav 和 https
协议(protocol)访问 Web 资源?
类似于以下内容:
use HTTP::DAV;
$d = HTTP::DAV->new();
$url = "https://host.org:8080/dav/";
#...
最佳答案
这尚未经过测试,但通过浏览文档,这应该可行:
$d->get_user_agent->ssl_opts( verify_hostname => 0 );
HTTP::DAV 的文档说:
get_user_agent
Returns the clients' working HTTP::DAV::UserAgent object.
You may want to interact with the HTTP::DAV::UserAgent object to modify request headers or provide advanced authentication procedures.
HTTP::DAV::UserAgent 未记录,但 its source code显示它是 LWP::UserAgent 的子类。 LWP::UserAgent 的文档提到了用于为用户代理对象设置 SSL 选项的 ssl_opts
方法。
关于perl - 如何为 Perl 的 HTTP::DAV 实现 https 支持,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63903416/
我是一名优秀的程序员,十分优秀!