|
cutelyst
3.7.0
A C++ Web Framework built on top of Qt, using the simple approach of Catalyst (Perl) framework.
|
Classes | |
| struct | Authorization |
Public Member Functions | |
| Headers ()=default | |
| Headers (const Headers &other) | |
| Headers (std::initializer_list< std::pair< QString, QString > > list) | |
| QString | authorization () const |
| QString | authorizationBasic () const |
| Authorization | authorizationBasicObject () const |
| QString | authorizationBearer () const |
| void | clear () |
| QString | connection () const |
| bool | contains (const QString &field) |
| QString | contentDisposition () const |
| QString | contentEncoding () const |
| bool | contentIsHtml () const |
| bool | contentIsJson () const |
| bool | contentIsText () const |
| bool | contentIsXHtml () const |
| bool | contentIsXml () const |
| qint64 | contentLength () const |
| QString | contentType () const |
| QString | contentTypeCharset () const |
| QMultiHash< QString, QString > | data () const |
| QDateTime | date () const |
| QString | header (const QString &field) const |
| QString | header (const QString &field, const QString &defaultValue) const |
| QString | host () const |
| bool | ifMatch (const QString &etag) const |
| QString | ifModifiedSince () const |
| bool | ifModifiedSince (const QDateTime &lastModified) const |
| QDateTime | ifModifiedSinceDateTime () const |
| bool | ifNoneMatch (const QString &etag) const |
| QString | lastModified () const |
| bool | operator!= (const Headers &other) const |
| Headers & | operator= (const Headers &other) |
| bool | operator== (const Headers &other) const |
| QString | operator[] (const QString &key) const |
| QString | proxyAuthorization () const |
| QString | proxyAuthorizationBasic () const |
| Authorization | proxyAuthorizationBasicObject () const |
| void | pushHeader (const QString &field, const QString &value) |
| void | pushHeader (const QString &field, const QStringList &values) |
| void | pushRawHeader (const QString &field, const QString &value) |
| QString | referer () const |
| void | removeHeader (const QString &field) |
| QString | server () const |
| QString | setAuthorizationBasic (const QString &username, const QString &password) |
| void | setCacheControl (const QString &value) |
| void | setContentDisposition (const QString &contentDisposition) |
| void | setContentDispositionAttachment (const QString &filename=QString()) |
| void | setContentEncoding (const QString &encoding) |
| void | setContentLength (qint64 value) |
| void | setContentType (const QString &contentType) |
| void | setContentTypeCharset (const QString &charset) |
| QString | setDateWithDateTime (const QDateTime &date) |
| void | setETag (const QString &etag) |
| void | setHeader (const QString &field, const QString &value) |
| void | setHeader (const QString &field, const QStringList &values) |
| QString | setLastModified (const QDateTime &lastModified) |
| void | setLastModified (const QString &value) |
| void | setProxyAuthenticate (const QString &value) |
| void | setReferer (const QString &value) |
| void | setServer (const QString &value) |
| void | setWwwAuthenticate (const QString &value) |
| QString | userAgent () const |
|
default |
Construct an empty header object.
| Headers::Headers | ( | const Headers & | other | ) |
Constructs a copy of \pa other.
Definition at line 19 of file headers.cpp.
|
inline |
| QString Headers::authorization | ( | ) | const |
This method is used to get an authorization header without any decoding.
Definition at line 336 of file headers.cpp.
Referenced by authorizationBasic(), and authorizationBasicObject().
| QString Headers::authorizationBasic | ( | ) | const |
This method is used to get an authorization header that use the "Basic Authentication Scheme". It will return "username:password" as a single string value.
Definition at line 351 of file headers.cpp.
References authorization().
| Headers::Authorization Headers::authorizationBasicObject | ( | ) | const |
This method is used to get an authorization header that use the "Basic Authentication Scheme". It will return a pair of username and password respectively.
Definition at line 356 of file headers.cpp.
References authorization().
| QString Headers::authorizationBearer | ( | ) | const |
This method is used to get an authorization token
Definition at line 341 of file headers.cpp.
|
inline |
| QString Headers::connection | ( | ) | const |
Returns the 'Connection' header field that indicates how it should be handled after a request has been processed, like 'close'.
Definition at line 295 of file headers.cpp.
| bool Headers::contains | ( | const QString & | field | ) |
Returns true if the header field is defined.
Definition at line 425 of file headers.cpp.
Referenced by Cutelyst::ViewJson::render().
| QString Headers::contentDisposition | ( | ) | const |
The Content-Disposition header field indicates if the content is expected to be displayed inline in the browser, that is, as a Web page or as part of a Web page, or as an attachment, that is downloaded and saved locally
Definition at line 23 of file headers.cpp.
Referenced by setContentDisposition().
| QString Headers::contentEncoding | ( | ) | const |
The Content-Encoding header field is used as a modifier to the media type. When present, its value indicates what additional encoding mechanism has been applied to the resource.
Definition at line 47 of file headers.cpp.
Referenced by Cutelyst::Request::contentEncoding().
| bool Headers::contentIsHtml | ( | ) | const |
Returns TRUE if the Content-Type header field indicate that the content is some kind of HTML (including XHTML).
Definition at line 127 of file headers.cpp.
References contentType().
| bool Headers::contentIsJson | ( | ) | const |
Returns TRUE if the Content-Type header field indicate that the content is JSON.
Definition at line 150 of file headers.cpp.
| bool Headers::contentIsText | ( | ) | const |
Returns TRUE if the Content-Type header field indicate that the content is textual.
Definition at line 122 of file headers.cpp.
| bool Headers::contentIsXHtml | ( | ) | const |
Returns TRUE if the Content-Type header field indicate that the content is XHTML.
Definition at line 135 of file headers.cpp.
References contentType().
| bool Headers::contentIsXml | ( | ) | const |
Returns TRUE if the Content-Type header field indicate that the content is XML.
Definition at line 142 of file headers.cpp.
References contentType().
| qint64 Headers::contentLength | ( | ) | const |
Returns the size in bytes of the message content
Definition at line 159 of file headers.cpp.
Referenced by Cutelyst::EngineRequest::finalizeHeaders().
| QString Headers::contentType | ( | ) | const |
The Content-Type header field indicates the media type of the message content. E.g.: "text/html" The value returned will be converted to lower case, and potential parameters will be ignored. If there is no such header field, then the empty string is returned.
Definition at line 57 of file headers.cpp.
Referenced by contentIsHtml(), contentIsXHtml(), contentIsXml(), Cutelyst::Request::contentType(), contentTypeCharset(), setContentType(), and setContentTypeCharset().
| QString Headers::contentTypeCharset | ( | ) | const |
Returns the upper-cased charset specified in the Content-Type header.
Definition at line 73 of file headers.cpp.
References contentType().
|
inline |
| QDateTime Headers::date | ( | ) | const |
Returns the date header as QDateTime
Definition at line 183 of file headers.cpp.
Referenced by setDateWithDateTime().
| QString Headers::header | ( | const QString & | field | ) | const |
Returns the value associated with field
Definition at line 390 of file headers.cpp.
Referenced by Cutelyst::Request::header().
| QString Headers::header | ( | const QString & | field, |
| const QString & | defaultValue | ||
| ) | const |
Returns the value associated with field, if field is not set defaultValue is returned
Definition at line 395 of file headers.cpp.
| QString Headers::host | ( | ) | const |
Returns the 'Host' header field used in request messages, containing information about which host the client would like to talk to, this is especially useful for building URIs and for VirtualHosts.
Definition at line 300 of file headers.cpp.
| bool Headers::ifMatch | ( | const QString & | etag | ) | const |
Checks for If-Match header usually used on POST to avoid mid-air collisions, making sure the content has not changed while the client changes it. Returns true if the etag value matches the value between double quotes of the client header or if the client did not provide the If-Match header.
In case of false client should usually discard posted data and return status code of 412 - Response::PreconditionFailed
Definition at line 238 of file headers.cpp.
| QString Headers::ifModifiedSince | ( | ) | const |
This header fields is used to make a request conditional. If the requested resource has (or has not) been modified since the time specified in this field, then the server will return a 304 Not Modified response instead of the document itself.
Definition at line 203 of file headers.cpp.
| bool Headers::ifModifiedSince | ( | const QDateTime & | lastModified | ) | const |
Checks if Last-Modified's content has changed in comparison to the If-Modified-Since header.
Definition at line 228 of file headers.cpp.
References lastModified().
| QDateTime Headers::ifModifiedSinceDateTime | ( | ) | const |
This header fields is used to make a request conditional. If the requested resource has (or has not) been modified since the time specified in this field, then the server will return a 304 Not Modified response instead of the document itself. This method parses the header and convert to QDateTime assuming the date is in GMT timezone.
Definition at line 208 of file headers.cpp.
| bool Headers::ifNoneMatch | ( | const QString & | etag | ) | const |
Checks for If-None-Match header to see if the client has the most recent version of a cached resource. Returns true if the etag value matches the value between double quotes of the client header.
In case of true client should usually return an empty body along with a status code of 304 - Response::NotModified.
Definition at line 249 of file headers.cpp.
| QString Headers::lastModified | ( | ) | const |
This header indicates the date and time at which the resource was last modified.
Definition at line 265 of file headers.cpp.
Referenced by ifModifiedSince(), and setLastModified().
|
inline |
|
inline |
| QString Headers::operator[] | ( | const QString & | key | ) | const |
Returns the value associated with key.
Definition at line 430 of file headers.cpp.
| QString Headers::proxyAuthorization | ( | ) | const |
A user agent that wishes to authenticate itself with a server or a proxy, may do so by including these headers.
Definition at line 375 of file headers.cpp.
Referenced by proxyAuthorizationBasic(), and proxyAuthorizationBasicObject().
| QString Headers::proxyAuthorizationBasic | ( | ) | const |
This method is used to get an authorization header that use the "Basic Authentication Scheme" but using the "Proxy-Authorization" header instead. It will return "username:password" as a single string value.
Definition at line 380 of file headers.cpp.
References proxyAuthorization().
| Headers::Authorization Headers::proxyAuthorizationBasicObject | ( | ) | const |
This method is used to get an authorization header that use the "Basic Authentication Scheme" but using the "Proxy-Authorization" header instead. It will return a pair of username and password respectively.
Definition at line 385 of file headers.cpp.
References proxyAuthorization().
| void Headers::pushHeader | ( | const QString & | field, |
| const QString & | value | ||
| ) |
Appends the header field to values
Definition at line 410 of file headers.cpp.
Referenced by Cutelyst::EngineRequest::finalizeCookies().
| void Headers::pushHeader | ( | const QString & | field, |
| const QStringList & | values | ||
| ) |
This method appends a header to internal data normalizing the key.
Definition at line 415 of file headers.cpp.
|
inline |
This method directly inserts a Header in it's properly form which is field in upper case form with underscores instead of dashes, so 'Content-Type' becomes 'CONTENT_TYPE' like CGI does, this method should be used only by Engines to get faster performance and avoiding normalization.
| QString Headers::referer | ( | ) | const |
Used to specify the address (URI) of the document from which the requested resource address was obtained.
Definition at line 310 of file headers.cpp.
Referenced by Cutelyst::Request::referer().
| void Headers::removeHeader | ( | const QString & | field | ) |
This method removes a header identified by field.
Definition at line 420 of file headers.cpp.
| QString Headers::server | ( | ) | const |
Returns the server header field contains information about the software being used by the originating server program handling the request.
Definition at line 285 of file headers.cpp.
| QString Headers::setAuthorizationBasic | ( | const QString & | username, |
| const QString & | password | ||
| ) |
This method is used to set an authorization header that use the "Basic Authentication Scheme". It won't set the values if username contains a colon ':'.
Definition at line 361 of file headers.cpp.
| void Headers::setCacheControl | ( | const QString & | value | ) |
Defines the Cache-Control header
Definition at line 28 of file headers.cpp.
| void Headers::setContentDisposition | ( | const QString & | contentDisposition | ) |
Defines the Content-Disposition header
Definition at line 33 of file headers.cpp.
References contentDisposition().
Referenced by setContentDispositionAttachment().
| void Headers::setContentDispositionAttachment | ( | const QString & | filename = QString() | ) |
Defines the Content-Disposition header as type attachment and the optional filename parameter
Definition at line 38 of file headers.cpp.
References setContentDisposition().
| void Headers::setContentEncoding | ( | const QString & | encoding | ) |
Defines the Content-Encoding header
Definition at line 52 of file headers.cpp.
| void Headers::setContentLength | ( | qint64 | value | ) |
Defines the size in bytes of the message content
Definition at line 168 of file headers.cpp.
Referenced by Cutelyst::EngineRequest::finalizeHeaders().
| void Headers::setContentType | ( | const QString & | contentType | ) |
Defines the Content-Encoding header
Definition at line 68 of file headers.cpp.
References contentType().
| void Headers::setContentTypeCharset | ( | const QString & | charset | ) |
The Content-Type header field indicates the media type of the message content. this defines the charset of the content-type
Definition at line 89 of file headers.cpp.
References contentType().
| QString Headers::setDateWithDateTime | ( | const QDateTime & | date | ) |
Defines the header that represents the date and time at which the message was originated
Definition at line 173 of file headers.cpp.
References date().
| void Headers::setETag | ( | const QString & | etag | ) |
Sets the ETag header in strong form by not prepending a 'W/' (weak etag) This method will place the etag value between double quotes, like: ETag: "33a64df551425fcc55e4d42a148795d9f25f89d4"
Definition at line 260 of file headers.cpp.
| void Headers::setHeader | ( | const QString & | field, |
| const QString & | value | ||
| ) |
Sets the header field to value
Definition at line 400 of file headers.cpp.
Referenced by setHeader().
| void Headers::setHeader | ( | const QString & | field, |
| const QStringList & | values | ||
| ) |
Sets the header field to the list of values
Definition at line 405 of file headers.cpp.
References setHeader().
| QString Headers::setLastModified | ( | const QDateTime & | lastModified | ) |
Defines the date and time at which the resource was last modified. This method takes a QDateTime and write it in RFC 822 and GMT timezone.
Definition at line 275 of file headers.cpp.
References lastModified(), and setLastModified().
| void Headers::setLastModified | ( | const QString & | value | ) |
Defines the date and time at which the resource was last modified.
Definition at line 270 of file headers.cpp.
Referenced by setLastModified().
| void Headers::setProxyAuthenticate | ( | const QString & | value | ) |
This header must be included in a 407 Proxy Authentication Required response.
Definition at line 331 of file headers.cpp.
| void Headers::setReferer | ( | const QString & | value | ) |
Sets the referrer (Referer) header. This method removes the fragment from the given URI if it is present, as mandated by RFC2616. Note that the removal does not happen automatically if using the setHeader() method to set the referrer
Definition at line 315 of file headers.cpp.
| void Headers::setServer | ( | const QString & | value | ) |
Defines the server header field contains information about the software being used by the originating server program handling the request.
Definition at line 290 of file headers.cpp.
| void Headers::setWwwAuthenticate | ( | const QString & | value | ) |
This header must be included as part of a 401 Unauthorized response. The field value consist of a challenge that indicates the authentication scheme and parameters applicable to the requested URI.
Definition at line 326 of file headers.cpp.
| QString Headers::userAgent | ( | ) | const |
Returns the header field used in request messages, containing information about the user agent originating the request.
Definition at line 305 of file headers.cpp.
Referenced by Cutelyst::Request::userAgent().