我处于由另一台Ubuntu 16.04托管的虚拟机Ubuntu 16.04(试图创建一个干净且可移植的环境)。
我从String authTokenHeader = request.getHeader("Authorization");
// parse the token
this way安装了EDirect
,如下所示:
E-utilities
我运行其中一种工具:
cd ~
/bin/bash
perl -MNet::FTP -e \
'$ftp = new Net::FTP("ftp.ncbi.nlm.nih.gov", Passive => 1);
$ftp->login; $ftp->binary;
$ftp->get("/entrez/entrezdirect/edirect.tar.gz");'
gunzip -c edirect.tar.gz | tar xf -
rm edirect.tar.gz
builtin exit
export PATH=${PATH}:$HOME/edirect >& /dev/null || setenv PATH "${PATH}:$HOME/edirect"
./edirect/setup.sh
我遇到了这个问题:
/home/ldar/edirect/esearch -db nucleotide -query "txid590 [Organism]"
我在网上检查了此代码错误501 Protocol scheme 'https' is not supported (LWP::Protocol::https not installed)
No do_post output returned from 'https://eutils.ncbi.nlm.nih.gov/entrez/eutils/esearch.fcgi?db=nucleotide&term=txid590%20%5BOrganism%5D&retmax=0&usehistory=y&edirect_os=linux&edirect=10.9&tool=edirect&email=ldar@ldar-VirtualBox'
Result of do_post http request is
$VAR1 = bless( {
'_msg' => 'Protocol scheme \'https\' is not supported (LWP::Protocol::https not installed)',
'_request' => bless( {
'_uri' => bless( do{\(my $o = 'https://eutils.ncbi.nlm.nih.gov/entrez/eutils/esearch.fcgi')}, 'URI::https' ),
'_content' => 'db=nucleotide&term=txid590%20%5BOrganism%5D&retmax=0&usehistory=y&edirect_os=linux&edirect=10.9&tool=edirect&email=ldar@ldar-VirtualBox',
'_headers' => bless( {
'user-agent' => 'libwww-perl/6.36',
'content-type' => 'application/x-www-form-urlencoded'
}, 'HTTP::Headers' ),
'_method' => 'POST'
}, 'HTTP::Request' ),
'_content' => 'LWP will support https URLs if the LWP::Protocol::https module
is installed.
',
'_headers' => bless( {
'content-type' => 'text/plain',
'client-date' => 'Fri, 22 Feb 2019 09:24:31 GMT',
'::std_case' => {
'client-warning' => 'Client-Warning',
'client-date' => 'Client-Date'
},
'client-warning' => 'Internal response'
}, 'HTTP::Headers' ),
'_rc' => 501
}, 'HTTP::Response' );
WebEnv value not found in search output - WebEnv1
。所以我做到了:
LWP::Protocol::https not installed
我也尝试使用cpanm install LWP::Protocol::https
cpan -l | grep "LWP::Protocol::https"
Loading internal null logger. Install Log::Log4perl for logging messages
LWP::Protocol::https 6.07
perl --version
This is perl 5, version 26, subversion 2 (v5.26.2) built for x86_64-linux-thread-multi
进行安装,但是同样的问题...
如果我在VM外部(因此,在主机下)运行安装,则不会出现此问题。谢谢