Qore RestClient Module Reference  1.8
RestClient::RestClient Class Reference

this class provides the REST client API More...

Inheritance diagram for RestClient::RestClient:

Public Attributes

const Accept = AcceptList.join(",")
 Accept header value.
 
const AcceptList = ...
 Accept header list.
 
const AcceptMap = map {$1: True}
 Map of acceptable Mime types.
 
const CompressionThreshold = 1024
 default threadhold for data compressions; transfers smaller than this size will not be compressed
 
const DataSerializationOptions
 Data serialization options; this is a hash to simulate a set of strings. More...
 
const DataSerializationSupport
 Data serialization support mapping codes to MIME types and de/serialization functions.
 
const DefaultHeaders
 default HTTP headers (Content-Type is added before sending)
 
const EncodingSupport
 Send content encoding options. More...
 
const Version = "1.7"
 RestClient Version.
 
const VersionString = sprintf("Qore-RestClient/%s", RestClient::Version)
 RestClient Version String.
 

Detailed Description

this class provides the REST client API

Member Data Documentation

◆ DataSerializationOptions

const RestClient::RestClient::DataSerializationOptions
Initial value:
= {
"auto": True,
%ifndef NoJson
"json": True,
%endif
%ifndef NoYaml
"yaml": True,
%endif
%ifndef NoXml
"rawxml": True,
"xml": True,
%endif
"url": True,
"text": True,
"bin": True,
}
const True

Data serialization options; this is a hash to simulate a set of strings.

Data serialization options are as follows:

  • "auto": prefers in this order: json, yaml, rawxml, xml, url, and text
  • "bin": for binary message bodies without data serialization
  • "json": use only JSON serialization
  • "rawxml": use raw XML serialization
  • "text": use only plain text. No serialization is used.
  • "url": for URL-encoded message bodies
  • "xml": use only XML-RPC serialization
  • "yaml": use only YAML serialization

◆ EncodingSupport

const RestClient::RestClient::EncodingSupport
Initial value:
= {
"gzip": {
"ce": "gzip",
"func": \gzip(),
},
"bzip2": {
"ce": "bzip2",
"func": \bzip2(),
},
"deflate": {
"ce": "deflate",
"func": \compress(),
},
"identity": {
"ce": NOTHING,
},
}
binary bzip2(binary bin, softint level=BZ2_DEFAULT_COMPRESSION)
binary compress(string str, int level=Z_DEFAULT_COMPRESSION)
binary gzip(string str, int level=Z_DEFAULT_COMPRESSION)
const NOTHING

Send content encoding options.

Send content encoding options are as follows:

  • "bzip": use bzip2 compression
  • "gzip": use gzip compression
  • "deflate": use deflate compression
  • "identity": use no content encoding