From ec79c838639b74f23c8d836368b08642ea8b4940 Mon Sep 17 00:00:00 2001 From: Andreas Gohr Date: Sat, 29 Apr 2006 17:58:05 +0200 Subject: Feedfetcher/HTTPClient fix This fixes a typo which made the new Feedparser not use our own HTTPClient. It also enhances the get() method of HTTPClient to optionally cope better with bad HTTP responses: Some servers return a body with a "304 Not Modified" status which violates RFC 2616 but is usually accepted by common browsers. Setting the $sloppy304 parameter will return the response body. This fixes problems with feeds from feedblendr.com darcs-hash:20060429155805-7ad00-33a1c3142f241bf7747e8f679237cb6e8f1564ef.gz --- inc/HTTPClient.php | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'inc/HTTPClient.php') diff --git a/inc/HTTPClient.php b/inc/HTTPClient.php index 18f4435bc..69a384487 100644 --- a/inc/HTTPClient.php +++ b/inc/HTTPClient.php @@ -111,10 +111,13 @@ class HTTPClient { * * Returns the wanted page or false on an error; * + * @param string $url The URL to fetch + * @param bool $sloppy304 Return body on 304 not modified * @author Andreas Gohr */ - function get($url){ + function get($url,$sloppy304=false){ if(!$this->sendRequest($url)) return false; + if($this->status == 304 && $sloppy304) return $this->resp_body; if($this->status != 200) return false; return $this->resp_body; } -- cgit v1.2.3