使用 PhpXmlRpc Client.setProxy 配置正向代理
使用 PhpXmlRpc Client.setProxy 指定中间代理,同时保留 XML-RPC 服务 URL 作为目标地址。
PhpXmlRpc 的命名空间客户端提供了 setProxy,用于走正向代理路由:
use PhpXmlRpc\Client;
$client = new Client('https://rpc.example/service');
$client->setProxy('proxy.example', 8080);
构造函数选定 XML-RPC 服务;setProxy 接收中间代理的主机与端口。取自HTTP 代理列表的 HTTP 地址可以填入这两项,适用于无需代理账号的、获准访问的公开 XML-RPC 端点路由。当所选传输支持所需方案时,该方法还接受代理用户名、密码和认证类型参数。
通过这个配置好的实例发送应用的 XML-RPC 消息,并用该库常规的 API 处理故障。请保留传输层的 HTTPS 证书校验。
针对框架自带的客户端
CodeIgniter 3 内置的 XML-RPC 库是另一个类。它的 server 方法用于设定目标;PhpXmlRpc 的示例并不能证明 $this->xmlrpc 提供了 setProxy。
先确认实际实例化的类与传输方式,再使用该客户端自己的代理接口,并尽可能保留框架原有的消息构造方式。