Example #1
0
 /**
  * @brief process curl
  */
 public static function curlProcess()
 {
     $ch = curl_init();
     // Set host. 1 = POST , 0 = GET
     if (self::$method == 1) {
         $host = sprintf("%s%s/%s/%s", self::$host, self::$resource, self::$version, self::$path);
     } else {
         $host = sprintf("%s%s/%s/%s?%s", self::$host, self::$resource, self::$version, self::$path, self::$content);
     }
     curl_setopt($ch, CURLOPT_URL, $host);
     curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
     curl_setopt($ch, CURLOPT_SSLVERSION, 3);
     // SSL 버젼 (https 접속시에 필요)
     curl_setopt($ch, CURLOPT_HEADER, 0);
     // 헤더 출력 여부
     curl_setopt($ch, CURLOPT_POST, self::$method);
     // Post Get 접속 여부
     // Set POST DATA
     if (self::$method) {
         $header = array("Content-Type:multipart/form-data");
         // route가 있으면 header에 붙여준다.
         if (self::$content['route']) {
             $header[] = "User-Agent:" . self::$content['route'];
         }
         curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
         curl_setopt($ch, CURLOPT_POSTFIELDS, self::$content);
     }
     curl_setopt($ch, CURLOPT_TIMEOUT, 10);
     // TimeOut 값
     curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
     // 결과값을 받을것인지
     self::$result = json_decode(curl_exec($ch));
     // unless http status code is 200. throw exception.
     $http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
     if ($http_code != 200) {
         self::$error_flag = true;
     }
     // Check connect errors
     if (curl_errno($ch)) {
         self::$error_flag = true;
         self::$result = curl_error($ch);
     }
     curl_close($ch);
 }