les solicito una vez más ayuda, no puedo consumir el servicio, este es un ejemplo en PHP
gracias por su
colaboración
Código PHP:
<?php
/** Ejemplo de manejo de SOAP con libreria de PHP php-soap */
$wsdl = "https://pilotosiatservicios.impuestos.gob.bo/v2/FacturacionCodigos?wsdl";
$token = 'VALOR_TOKEN';
$opts = array(
'http' => array(
'header' => "Authorization: Token $token"
)
);
$context = stream_context_create($opts);
$client = new \SoapClient($wsdl, [
'stream_context' => $context,
'cache_wsdl' => WSDL_CACHE_NONE,
'compression' => SOAP_COMPRESSION_ACCEPT | SOAP_COMPRESSION_GZIP | SOAP_COMPRESSION_DEFLATE
// other options
]);
$respons = $client->verificarComunicacion();
?>
este es código en Delphi pero da el siguiente error "EL SERVICIO REQUIERE API KEY", supongo que es por el encabezado
Código Delphi
[-]
procedure TForm1.Button5Click(Sender: TObject);
const Token = 'VALOR_TOKEN';
type TAuthHeader = class(TSOAPHeader)
private Tokey: WideString;
published
end;
var
Peticion: respuestaComunicacion;
Respuesta: ServicioFacturacionCodigos;
Headers: ISOAPHeaders;
key: TAuthHeader;
HTTPRio: THTTPRio;
begin
HTTPRio := THTTPRio.Create(self);
try
key := TAuthHeader.Create;
key.Tokey := 'Authorization: Token ' + Token;
Headers := HTTPRIO as ISoapHeaders;
Respuesta := GetServicioFacturacionCodigos(False, '', HTTPRIO);
(Respuesta as ISOAPHeaders).Send(key);
try
Respuesta.verificarComunicacion; except
on E: Exception do
ShowMessage('Error : ' + E.Message);
end;
finally
key.Free;
end;
end;