php rpc安全,PHPRPC

说明:

PHPRPC 有很多种特性 轻量级,安全,跨国际,跨语言 跨平台跨环境

它支持php java js .net Delphi asp python等各种语言,而且在官方网站上面有各种语言的帮助手册 网址是:www.phprpc.org/zh_CN/下面简单的事例说明

去网站上面下载PHPPRC FOR PHP版本的,下载完成之后我们在web目录下面新建一个phprpc_client和phprpc_server这2个文件夹,其中phprpc_client和phprpc_server文件夹里面的文件如下:

69c1753d1e979685034716afa4efe0d8.png

其中官方上面是这样说明的:

91cd48f9de2234e696845e50f737140f.png

下面我们就进行测试,首先在phprpc_server进行创建一个server.php文件

include ("php/phprpc_server.php");

function HelloWorld() {

return 'Hello World!';

}

$server = new PHPRPC_Server();

$server->add('HelloWorld');

$server->start();

其中我们新建了一个HelloWorld方法,这个是server端的,那么我们如何在client端进行调用呢?

下面我们在phprpc_client下面新建一个client.php文件

include ("php/phprpc_client.php");

$client = new PHPRPC_Client('http://127.0.0.1/phprpc_server/server.php');

echo $client->HelloWorld();

然后直接访问http://localhost/phprpc_client/client.php

会看到显示Hello World!Ok测试成功!

如果按照这样的思路,我们进行写接口的时候可以很方便。。

其实查看一个client.php里面进行跟踪下代码找到了php/phprpc_client.php里面我们会发现,找到

代码大概是315行 看到这一句代码

function _connect() {

if (is_null($this->_proxy)) {

$host = (($this->_server['scheme'] == "https") ? "ssl://" : "") . $this->_server['host'];

$this->_socket = @pfsockopen($host, $this->_server['port'], $errno, $errstr, $this->_timeout);

}

else {

$host = (($this->_server['scheme'] == "https") ? "ssl://" : "") . $this->_proxy['host'];

$this->_socket = @pfsockopen($host, $this->_proxy['port'], $errno, $errstr, $this->_timeout);

}

if ($this->_socket === false) {

return new PHPRPC_Error($errno, $errstr);

}

stream_set_write_buffer($this->_socket, 0);

socket_set_timeout($this->_socket, $this->_timeout);

return true;

}

可以看_connect() 这个方法其实还是用的socket ,所以呢,我们在用phprpc的时候需要保证php 安装了socket扩展,另外也需要进行开启session的支持,

要查看php 是否安装了socket扩展的话,我们可以用phpinfo() 进行查看!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值