pport / rpc
Pport RPC 客户端-服务器实现
v1.0.2
2022-12-02 18:14 UTC
Requires
- php: >=5.3.0
This package is not auto-updated.
Last update: 2024-09-21 01:57:41 UTC
README
Pport RPC 包:轻松实现后端远程调用。
安装
使用 composer 安装 pport\rpc
composer require pport/rpc
部署服务器和客户端
1. 部署服务器:server.php
<?php
class TestRemoteClass1
{
public static $api_data;
public function helloWorld()
{
return ['attribute1' => 'TestRemoteClass1 Attribute 1', 'attribute2' => 'TestRemoteClass1 Attribute 2'];
}
}
class TestRemoteClass2
{
public static $api_data;
public function fetchData()
{
/**return [
'data' => ['1', '2', '3', '4']
];**/
return ['1', '2', '3', '4'];
}
public function fetchString()
{
return "HelloWorld 2";
}
}
//Run the server
Pport\Rpc\Server::run();
/**Pport\Rpc\Server::verify_request(function (){
Pport\Rpc\Server::run();
})**/;?>
2. 从前端或其他界面连接到您的服务器:例如 client.php
<?php
$rpcClient = new Pport\Rpc\Client();
$rpcClient->set_api_url("https:///epesicloud/pport-rpc/tests/server.php");
//Call remote class method
$testRemoteObject1 = TestRemoteClass1::helloWorld();
//Access returned data attributes from the returned object/s
echo $testRemoteObject1->attribute1;
echo "<br/>";
echo $testRemoteObject1->attribute2;
echo "<br/>";
echo "<br/>";
//Access returned data attributes from the returned object/s
$testRemoteObject2 = TestRemoteClass2::fetchData();
var_dump($testRemoteObject2);
//Access String Data
$fetchedString = TestRemoteClass2::fetchString();
var_dump($fetchedString);
;?>