diff options
-rw-r--r-- | icespider/core/ihttpRequest.cpp | 8 | ||||
-rw-r--r-- | icespider/core/ihttpRequest.h | 1 |
2 files changed, 9 insertions, 0 deletions
diff --git a/icespider/core/ihttpRequest.cpp b/icespider/core/ihttpRequest.cpp index 9142b1b..1ca4c38 100644 --- a/icespider/core/ihttpRequest.cpp +++ b/icespider/core/ihttpRequest.cpp @@ -125,6 +125,14 @@ namespace IceSpider { return IceUtil::Optional<T>(); } + void IHttpRequest::responseRedirect(const std::string & url, const IceUtil::Optional<std::string> & statusMsg) const + { + getOutputStream() + << "Status: 303 " << (statusMsg ? *statusMsg : "Moved") << "\r\n" + << "Location: " << url << "\r\n" + << "\r\n"; + } + void IHttpRequest::response(short statusCode, const std::string & statusMsg) const { getOutputStream() diff --git a/icespider/core/ihttpRequest.h b/icespider/core/ihttpRequest.h index 77b4ad3..0cd0f8b 100644 --- a/icespider/core/ihttpRequest.h +++ b/icespider/core/ihttpRequest.h @@ -57,6 +57,7 @@ namespace IceSpider { return boost::lexical_cast<T>(i->second); } } + void responseRedirect(const std::string & url, const IceUtil::Optional<std::string> & = IceUtil::None) const; void setCookie(const std::string &, const std::string &, const IceUtil::Optional<std::string> & = IceUtil::None, const IceUtil::Optional<std::string> & = IceUtil::None, bool = false, IceUtil::Optional<time_t> = IceUtil::None); |