我正在编写一个使用 Five9 API 的 Web 应用程序。我有一个使用 API 打印出第一个用户的电子邮件的工作 php 脚本。我的应用程序在 Perl 中,我试图避免使用 PHP 脚本。我曾尝试使用 SOAP::Lite,但遇到了困难。这是我的工作 PHP 脚本。
#!/usr/bin/php
<?php
$soap = null;
$wsdl = "https://api.five9.com/wsadmin/v2/AdminWebService?wsdl";
$user = "johnsmith@example.com";
$pass = "password";
$soap_options = array("login" => $user, "password" => $pass, "trace" => 1);
$soap = new SoapClient($wsdl, $soap_options);
$arryParams['userNamePattern'] = '';
$result = $soap->getUsersInfo($arryParams);
if(isset($result->return)) {
$objRecords = $result->return;
print $objRecords[0]->generalInfo->EMail;
print "\n";
}
?>
这是我迄今为止使用 perl 和 SOAP::Lite 所做的工作
#!/usr/bin/env perl
use warnings;
use strict;
use MIME::Base64;
use Data::Dumper;
use SOAP::Lite +trace => [ transport => sub { print $_[0]->as_string } ];
my $wsdl_five9 = 'https://api.five9.com/wsadmin/AdminWebService?wsdl&user=johnsmith@example.com';
my $uri = 'https://api.five9.com/wsadmin/AdminWebService';
my $user = 'johnsmith@example.com';
my $password = 'password';
my $authorize = 'Basic '.encode_base64($user . ":" . $password);
my $client = SOAP::Lite->service($wsdl_five9);
$client->on_fault(
sub {
my $soap = shift;
my $res = shift;
if(ref($res) eq '') {
die($res);
} else {
die($res->faultstring);
}
return new SOAP::SOM;
}
);
print "Done\n";
如果有人有使用 perl 和 SOAP 的经验,任何见解将不胜感激。