Le client à espace de noms de PhpXmlRpc expose setProxy pour une route de proxy de transfert :

use PhpXmlRpc\Client;

$client = new Client('https://rpc.example/service');
$client->setProxy('proxy.example', 8080);

Le constructeur choisit le service XML-RPC ; setProxy reçoit l'hôte et le port de l'intermédiaire. Une adresse HTTP issue de la liste de proxys HTTP peut les renseigner pour une route autorisée vers un point de terminaison XML-RPC public qui n'exige aucun compte proxy. La méthode accepte aussi des arguments de nom d'utilisateur, de mot de passe et de type d'authentification lorsque le transport retenu prend en charge le schéma requis.

Envoyez les messages XML-RPC de l'application via cette instance configurée et traitez les erreurs avec l'API habituelle de la bibliothèque. Conservez la vérification du certificat HTTPS du transport.

Pour un client géré par un framework

La bibliothèque XML-RPC intégrée de CodeIgniter 3 est une autre classe. Sa méthode server fixe la destination ; l'exemple PhpXmlRpc ne démontre pas que $this->xmlrpc expose setProxy.

Identifiez la classe et le transport réellement instanciés, puis utilisez l'interface proxy de ce client en conservant, autant que possible, la construction des messages du framework.

Articles similaires