コード例 #1
0
ファイル: CommonUtilHttp.php プロジェクト: babety/HellaEngine
 /**
  * 调用远程的方法
  *
  * @param unknown $url
  * @param unknown $servicerpcfunction
  * @param unknown $params
  * @param string $verify
  * @return NULL|CommonUtilReturnVar
  */
 static function call_remote_rpc($url, $servicerpcfunction, $params = [], $verify = NULL)
 {
     $message = CommonUtilMessage::create_with_rpccall($servicerpcfunction, $params, $verify);
     $encodemessage = CommonUtilMessage::encodeMessage([$message->toArray()]);
     $response = self::http($url, ["data" => $encodemessage]);
     if ($response['http_code'] != 200) {
         return null;
     }
     $response_str = $response['response'];
     if ($response_str == "f") {
         return null;
     }
     $retmessage = CommonUtilMessage::decodeMessage($response_str);
     if (is_null($retmessage)) {
         return null;
     }
     $retcode = null;
     foreach ($retmessage as $rpc_return) {
         if ($rpc_return[CommonUtilMessage::DBKey_msgdata][CommonUtilMessage::DBKey_cmd] === $servicerpcfunction) {
             $retcode = CommonUtilReturnVar::create_with_message_arr($rpc_return);
             break;
         }
     }
     return $retcode;
 }
コード例 #2
0
 /**
  * 获得返回结果中的编码
  *
  * @param CommonUtilReturnVar $retdata
  */
 public static function getcode($retdata)
 {
     return $retdata->get_retcode();
 }