braek-neck писал(а):
а на счет использования API при помощи http-запроса, можно по подробней.
Например у меня перл шлюз приема платежей, там такое
Код:
...
$armuser = "user" ;
$armpass = "pswd" ;
$URL = "http://127.0.0.1:8080/bgbilling/executer?user=$armuser&pswd=$armpass&module=contract" ;
...
$uURL = "$URL&action=UpdateContractPayment&date=$d1&pt=$PAYMENT_ID&cid=$cid&comment=$ID:$hash:$account&summa=$sum&id=new" ;
my $hdrs = HTTP::Headers->new(
"Content-Type" => "text/html",
"Content-Length" => length($uURL),
);
my $req = HTTP::Request->new( "GET", $uURL, $hdrs, $request );
my $ua = LWP::UserAgent->new;
my $resp = $ua->request($req);
if ($resp->is_success )
{
my($content, $status) ;
$content = $resp -> content ;
if ( ($status ) = $content =~ /status=\"(.+)\"/ )
{
if ( $status eq "ok" )
{
return ( 0 , "Счёт клиента $ClientName пополнен на $sum рублей" ) ;
}
return (2,"Невозможно пополнить счёт для $account.Ответ сервера $content") ;
}
return (2,"Невозможно пополнить счёт для $account.Произошла ошибка") ;
}
...
Вот здесь URL-ка заполняется параметрами для пополнения счета клиента
Код:
$URL = "http://127.0.0.1:8080/bgbilling/executer?user=$armuser&pswd=$armpass&module=contract" ;
$uURL = "$URL&action=UpdateContractPayment&date=$d1&pt=$PAYMENT_ID&cid=$cid&comment=$ID:$hash:$account&summa=$sum&id=new" ;
в общем должно быть понятно