Example #1
0
 /**
  * 完善daemon处理函数,此函数必备
  *
  *
  */
 function daemonFunc()
 {
     require dirname(__FILE__) . '/../../config/testUI/config.php';
     $redis = new Predis\Client($_config['redis_server']);
     $http = new Http();
     while ($this->subProcessCheck()) {
         //处理队列
         $case_data = $redis->lpop($_config['queue_name']);
         if (empty($case_data)) {
             break;
         } else {
             $arr = json_decode($case_data, true);
             $url = $arr['host'] . $arr['url'];
             $query = $arr['param'];
             $method = strtoupper($arr['method']);
             //拼装表单提交数据
             $formdata = array();
             $temp_arry = explode('&', $query);
             foreach ($temp_arry as $item) {
                 list($k, $v) = explode('=', $item);
                 $formdata[$k] = $v;
             }
             //判断是否需要token
             if (isset($arr['token'])) {
                 $formdata['token'] = $arr['token'];
             }
             if ($method == 'GET') {
                 $http->get($url, $formdata);
             } else {
                 $http->post($url, $formdata);
             }
             $res = $http->getContent();
             //此处增加返回结果的判断
             $result = $arr['result'];
             if ($result == $res) {
                 $res_test = 1;
             } else {
                 $res_test = 0;
             }
             //                $req['url'] = $url;
             //                $req['data'] = $formdata;
             //$result =array();
             file_put_contents(realpath(dirname(__FILE__)) . '/../../output/testUI.log', $res_test . '|' . $result . '|' . $res . '|' . $url . '|' . json_encode($formdata) . "\n", FILE_APPEND);
         }
         //增加处理数,不增加处理数,就需要子进程本身有退出机制。
         //$this->requestCount++;
         //释放时间片
         usleep(5000);
     }
 }
 public function act_accountInforIntegation()
 {
     $dpId = $_REQUEST['dpId'];
     $developerMod = M('Developer');
     if (!$dpId) {
         self::$errMsg['12000'] = "未获取到该用户的ID,无法同步信息至开放系统!";
         return false;
     }
     $basInfoSta = $developerMod->getDeveloper("*", "id = " . $dpId);
     if (!empty($basInfoSta)) {
         $sendInfor = array("username" => $basInfoSta[0]['app_key'], "password" => $basInfoSta[0]['login_pwd'], "token" => $basInfoSta[0]['token'], "groupid" => 10, "email" => $basInfoSta[0]['email'], "mobile" => $basInfoSta[0]['phone'], "qq" => '', "address" => $basInfoSta[0]['address2'] . " " . $basInfoSta[0]['address'], "company" => $basInfoSta[0]['company'], "status" => $basInfoSta[0]['status'], "regtime" => $basInfoSta[0]['create_time'], "regip" => '', "logintime" => '', "loginip" => '');
     } else {
         self::$errMsg[10131] = get_promptmsg(10131, '分销商');
         return false;
     }
     $synStatus = array();
     //开始同步到开放系统 外网
     include_once WEB_PATH . 'lib/service/http.php';
     $http = new Http('http://idc.open.valsun.cn/admin_open/openInterface.php');
     $http->addPostParam(array('distributionBasicInfor' => json_encode($sendInfor)));
     $http->addHeader("Author:zoujunrong");
     if (!$http->post()) {
         //如果是javascript请求,输出是给javascript的,可能就需要对输出转码
         self::$errMsg[10145] = get_promptmsg(10145, $http->err_str);
         return false;
     } else {
         // 			echo $http->getResponse('header')."---header<br/>";
         $synStatus["outOpenSystem"] = $http->getContent();
     }
     //开始同步到开放系统 外网
     $http->setURL('http://open.valsun.cn:88/admin_open/openInterface.php');
     $http->addPostParam(array('distributionBasicInfor' => json_encode($sendInfor)));
     $http->addHeader("Author:zoujunrong");
     if (!$http->post()) {
         //如果是javascript请求,输出是给javascript的,可能就需要对输出转码
         self::$errMsg[10146] = get_promptmsg(10146, $http->err_str);
         return false;
     } else {
         // 			echo $http->getResponse('header')."---header<br/>";
         $synStatus["innerOpenSystem"] = $http->getContent();
     }
     return $synStatus;
 }
Example #3
0
 static function quickGet($url)
 {
     $bits = parse_url($url);
     $host = $bits['host'];
     $port = isset($bits['port']) ? $bits['port'] : 80;
     $path = isset($bits['path']) ? $bits['path'] : '/';
     if (isset($bits['query'])) {
         $path .= '?' . $bits['query'];
     }
     $client = new Http($host, $port);
     if (!$client->get($path)) {
         return false;
     } else {
         return $client->getContent();
     }
 }