105 {
106 try
107 {
108 include_once "Services/WebServices/Curl/classes/class.ilCurlConnection.php";
110 $curl->init();
111
112 $curl->setOpt(CURLOPT_FRESH_CONNECT, true);
113 $curl->setOpt(CURLOPT_RETURNTRANSFER, true);
114 $curl->setOpt(CURLOPT_FORBID_REUSE, true);
115 $curl->setOpt(CURLOPT_HEADER, 0);
116 $curl->setOpt(CURLOPT_CONNECTTIMEOUT, 3);
117 $curl->setOpt(CURLOPT_POSTREDIR, 3);
118
119
120 $curl->setOpt(CURLOPT_SSL_VERIFYPEER, false);
121
122 $curl->setOpt(CURLOPT_HTTPHEADER, array(
123 "Accept: application/json",
124 "Expect:"
125 ));
126
127 if((bool)$a_is_post)
128 {
129 $curl->setOpt(CURLOPT_POST, 1);
130 if(sizeof($a_param))
131 {
132 $curl->setOpt(CURLOPT_POSTFIELDS, http_build_query($a_param));
133 }
134 }
135 else
136 {
137 $curl->setOpt(CURLOPT_HTTPGET, 1);
138 if(sizeof($a_param))
139 {
140 $a_url = $a_url.
141 (strpos($a_url, "?") === false ? "?" : "").
142 http_build_query($a_param);
143 }
144 }
145 $curl->setOpt(CURLOPT_URL, $a_url);
146
147 $answer = $curl->exec();
148 }
149 catch (Exception $ex)
150 {
152 return;
153 }
154
155 return json_decode($answer);
156 }
static sendFailure($a_info="", $a_keep=false)
Send Failure Message to Screen.