Xml 将CSV文件中的信息添加到URL

Xml 将CSV文件中的信息添加到URL,xml,perl,csv,Xml,Perl,Csv,我需要发出多个HTTP PUT请求 我有一个XML模板,还有一个CSV文件,上面有我设备上的ID、名称和IP。(我想更改系统中的名称或IP) 这些设备与我的CSV数据中的ID完全相同 Input.csv(id、名称、ip) 我的Perl脚本 使用严格; 使用警告; 使用XML::Twig; 使用LWP::UserAgent; 使用HTTP::header; 使用HTTP::请求; 使用File::Slurp; 使用JSON-support_by_pp; 使用LWP 5.64; 使用MIME::B

我需要发出多个HTTP PUT请求

我有一个XML模板,还有一个CSV文件,上面有我设备上的ID、名称和IP。(我想更改系统中的名称或IP)

这些设备与我的CSV数据中的ID完全相同

Input.csv(id、名称、ip) 我的Perl脚本
使用严格;
使用警告;
使用XML::Twig;
使用LWP::UserAgent;
使用HTTP::header;
使用HTTP::请求;
使用File::Slurp;
使用JSON-support_by_pp;
使用LWP 5.64;
使用MIME::Base64;
使用IO::Socket::SSL;
使用File::Slurp;
#创建用户代理对象
my$ua=LWP::UserAgent->new(ssl\U opts=>{
SSL\u验证\u模式=>SSL\u验证\u无(),
验证_主机名=>0,
} );
我的$xml=xml::Twig->new->parsefile('iemplate.xml');
$xml->set_pretty_print('indented_a');

open(我的$input,最明显的问题是,
$uri
不会在此语句中展开

my $uri = 'https://hostname:9060/ers/config/networkdevice/($id)'
字符串中没有嵌入双引号,因此使用它们作为分隔符没有问题,因为分隔符将插入标量

my $uri = "https://hostname:9060/ers/config/networkdevice/($id)"

我不能保证这将解决眼前的问题,因为我没有办法测试它,但它似乎很可能

404意味着您正在访问的URI不存在。尝试执行
curl
与它对话-您可以
curl-XPUT
是否
$URI
正确?填充后添加一行以打印出来,以便验证它是否正确
my$uri=”https://hostname:9060/ers/config/networkdevice/$id“
这是一种正确的书写方式。
id
无剪辑
my $uri = 'https://hostname:9060/ers/config/networkdevice/($id)'
my $uri = "https://hostname:9060/ers/config/networkdevice/($id)"