Merge pull request #375 from tdevos/master
Use curl to get remote file content
This commit is contained in:
commit
ac3e962732
|
@ -55,19 +55,10 @@ class OC_OCSClient{
|
|||
* This function calls an OCS server and returns the response. It also sets a sane timeout
|
||||
*/
|
||||
private static function getOCSresponse($url) {
|
||||
// set a sensible timeout of 10 sec to stay responsive even if the server is down.
|
||||
$ctx = stream_context_create(
|
||||
array(
|
||||
'http' => array(
|
||||
'timeout' => 10
|
||||
)
|
||||
)
|
||||
);
|
||||
$data=@file_get_contents($url, 0, $ctx);
|
||||
$data = \OC_Util::getUrlContent($url);
|
||||
return($data);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @brief Get all the categories from the OCS server
|
||||
* @returns array with category ids
|
||||
|
|
39
lib/util.php
39
lib/util.php
|
@ -669,4 +669,43 @@ class OC_Util {
|
|||
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* @Brief Get file content via curl.
|
||||
* @param string $url Url to get content
|
||||
* @return string of the response or false on error
|
||||
* This function get the content of a page via curl, if curl is enabled.
|
||||
* If not, file_get_element is used.
|
||||
*/
|
||||
|
||||
public static function getUrlContent($url){
|
||||
|
||||
if (function_exists('curl_init')) {
|
||||
|
||||
$curl = curl_init();
|
||||
|
||||
curl_setopt($curl, CURLOPT_HEADER, 0);
|
||||
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
|
||||
curl_setopt($curl, CURLOPT_CONNECTTIMEOUT, 10);
|
||||
curl_setopt($curl, CURLOPT_URL, $url);
|
||||
|
||||
$data = curl_exec($curl);
|
||||
curl_close($curl);
|
||||
|
||||
} else {
|
||||
|
||||
$ctx = stream_context_create(
|
||||
array(
|
||||
'http' => array(
|
||||
'timeout' => 10
|
||||
)
|
||||
)
|
||||
);
|
||||
$data=@file_get_contents($url, 0, $ctx);
|
||||
|
||||
}
|
||||
|
||||
return $data;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue