forked from GNUsocial/gnu-social
Rebuilt HTTPClient class as an extension of PEAR HTTP_Request2 package, adding redirect handling and convenience functions.
Caching support will be added in future work after unit tests have been added. * extlib: add PEAR HTTP_Request2 0.4.1 alpha * extlib: update PEAR Net_URL2 to 0.3.0 beta for HTTP_Request2 compatibility * moved direct usage of CURL and file_get_contents to HTTPClient class, excluding external-sourced libraries * adapted GeonamesPlugin for new HTTPResponse interface Note some plugins haven't been fully tested yet.
This commit is contained in:
@@ -41,22 +41,18 @@ abstract class ShortUrlApi
|
||||
return strlen($url) >= common_config('site', 'shorturllength');
|
||||
}
|
||||
|
||||
protected function http_post($data) {
|
||||
$ch = curl_init();
|
||||
curl_setopt($ch, CURLOPT_URL, $this->service_url);
|
||||
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
|
||||
curl_setopt($ch, CURLOPT_POST, 1);
|
||||
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
|
||||
$response = curl_exec($ch);
|
||||
$code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
|
||||
curl_close($ch);
|
||||
if (($code < 200) || ($code >= 400)) return false;
|
||||
return $response;
|
||||
protected function http_post($data)
|
||||
{
|
||||
$request = HTTPClient::start();
|
||||
$response = $request->post($this->service_url, null, $data);
|
||||
return $response->getBody();
|
||||
}
|
||||
|
||||
protected function http_get($url) {
|
||||
$encoded_url = urlencode($url);
|
||||
return file_get_contents("{$this->service_url}$encoded_url");
|
||||
protected function http_get($url)
|
||||
{
|
||||
$request = HTTPClient::start();
|
||||
$response = $request->get($this->service_url . urlencode($url));
|
||||
return $response->getBody();
|
||||
}
|
||||
|
||||
protected function tidy($response) {
|
||||
|
||||
Reference in New Issue
Block a user