The HttpResponse class holds all the responses elements for an HTTP request. This document details how to work specifically with the content-type of the response headers
Content types
The "Content-Type" header in HTTP responses gives the media type of the response. The media type is both the data format and how the data is intended to be processed by a recipient. (modified from rfc7231)
Behavior of the parameters HttpResponse raise_for_ct* methods
type: (only applicable for the raise_for_ct() method): instead of using one of the three other content type methods for html, json, or xml, you can specify a mime type to check, any of those in mime::mimemap
charset: if you don't give a value to this parameter, we only check that the content type is what you expect; that is, the charset, if given, is ignored.
behavior: by default when you call this method, and the content type does not match what the method expects, then we run stop() with a message. Instead of stopping, you can choose behavior="warning"
and we'll throw a warning instead, allowing any downstream processing to proceed.
Examples
## Not run:(x <- HttpClient$new(url ="https://hb.opencpu.org"))(res <- x$get())## see the content typeres$response_headers
## check that the content type is text/htmlres$raise_for_ct_html()## it's def. not json# res$raise_for_ct_json()## give custom content typeres$raise_for_ct("text/html")# res$raise_for_ct("application/json")# res$raise_for_ct("foo/bar")## check charset in addition to the media typeres$raise_for_ct_html(charset ="utf-8")# res$raise_for_ct_html(charset = "utf-16")# warn instead of stopres$raise_for_ct_json(behavior ="warning")## End(Not run)