博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JosnRpcClient
阅读量:5306 次
发布时间:2019-06-14

本文共 2044 字,大约阅读时间需要 6 分钟。

host = $host; $this->port = $port; $this->version = $version; $this->debug = $debug; } /** * 请求核心方法 * @param $method 回调方法名 * @param $params 参数数组 * @return array 返回结果数组 */ public function request($method, $params=array()) {
// 检验request信息 if (!is_scalar($method)) {
throw new \think\Exception('Method name has no scalar value'); } if (is_array($params)) {
$params = array_values($params); } else {
throw new \think\Exception('Params must be given as array'); } // 封装请求数据 $request = json_encode(array( 'jsonrpc' => $this->version, 'method' => $method, 'params' => $params, 'id' => $this->id++ )); // 是否是debug模式 $this->debug && $this->debug.='***** Request *****'."\n".$request."\n".'***** End Of request *****'."\n\n"; // curl请求 $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $this->host); curl_setopt($ch, CURLOPT_PORT, $this->port); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json')); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_POSTFIELDS, $request); $ret = curl_exec($ch); // 输出调试信息 if ($this->debug) {
echo nl2br(($this->debug)); } if ($ret !== false) {
$response = json_decode($ret); if (isset($response->error)) {
//throw new RPCException($formatted->error->message, $formatted->error->code); throw new \think\Exception('Request error: '.$response->error); } else {
return $response; } } else {
throw new \think\Exception("Server did not respond: ".$this->host.':'.$this->port); } } }

转载于:https://www.cnblogs.com/wzjwffg/p/11277451.html

你可能感兴趣的文章
jenkins配置详解之——执行者数量
查看>>
AngularJS模块加载
查看>>
书评第003篇:《0day安全:软件漏洞分析技术(第2版)》
查看>>
FetchType与FetchMode的差别
查看>>
WEB 缓存
查看>>
uva--242(邮资问题 dp)
查看>>
微软七届MVP桂素伟:移动互联网与职业规划
查看>>
PADS技巧——过孔定制与使用
查看>>
spring boot web开发 简单的增删改查和spring boot 自带的Junit测试 案例
查看>>
LINQ笔记
查看>>
S3C2440中断寄存器
查看>>
html的的归纳点
查看>>
地图经纬度C#和Javascript的压缩以及解压
查看>>
sed对指定行添加或删除注释
查看>>
C#矩形框沿直线移动
查看>>
springboot中访问jsp文件方式
查看>>
树的直径新求法、codeforces 690C3 Brain Network (hard)
查看>>
五子棋游戏SRS文档
查看>>
Hdu 2476 String painter (区间DP)
查看>>
找路径
查看>>