RPC

本质是远程调用、也可把RPC包复制到项目下,此时不修改代码的情况下调用将自动转成本地调用从而忽略RPC签名、也不再发起远程请求。

提醒:RPC功能非常多且会不断增加,使用RPC功能需要开发者有足够的技术能力。

配置:

rpc_secret = 
IGNORE_SIGN = TRUE
RPC_WEBTOOL_URL = https://yourdomain.com

其中rpc_secret需要在多端配置一致。

调用演示

图片去除背景的操作

初始化RPC

$url = get_config("RPC_WEBTOOL_URL").'/rpc/webtool/ImageBackground';    
$this->client = rpc($url);  

调用RPC中的方法

$url = $this->input['url']; 
$res = $this->client->remove_bg($url);
if($res['status']=='ok'){}

调用打印机

$url = get_config("RPC_WEBTOOL_URL").'/rpc/webtool/Printer';    
$this->client = rpc($url); 
//查寻设备是否在线
$d = $this->client->get_status($input);    
if(get_config('DEBUG')){
    return json_success([]);
}
if($d == 'online'){
    return json_success([]);    
}else{
    return json_error(['msg'=>'设备不在线']);   
}          

其中 $input 传入 printer_id 打印机ID,drive 是 类型 gx lianke

目前打印支持佳能及链科盒子。

部分RPC接口

RPC功能非常多,此处不一一举例,具体请查看RPC下的代码。