Columns as HTTP headers
- Last Updated: February 9, 2024
- 1 minute read
- DataDirect Connectors
- JDBC
- Autonomous REST Connector 6.0
- Documentation
A column can be sent as an HTTP header instead of as part of a query string
in GET requests. HTTP headers can be specified in the column definition by setting the
#header property to true and providing the header using the #eq
property.
If the header to be filtered is a dynamic HTTP-request header, and therefore not returned
in the result set, specify
#virtual:true to have it exposed as searchable
column. Otherwise, this property should be omitted.Note: The driver
does not support headers that are natively mapped to the JSON data type to be exposed as
virtual columns. If the header is mapped to a JSON data type, the driver does not treat
the header field as a virtual column and looks for it in the response. You can avoid this
issue by natively mapping virtual fields that contain JSON strings to the VarChar data
type.
The syntax to send a column as an HTTP header takes the following form:
"<column_name>[]":{
"#type":"<data_type>",
"#header":true,
"#virtual":true,
"#default":"<default_filter>",
"#eq":"<header_name>"
}where:
- data_type
- (optional) specifies the data type to which the column is mapped.
- default_filter
- (optional) specifies the value sent with the header that is used to
filter results. When this value is specified, the value
<header>:<default_filter>is sent in the HTTP request. If the default filter is not specified, a WHERE clause must provide the filter value. For example:SELECT * FROM authentication WHERE authentication = 'scott/tiger' - header_name
- specifies the name of the HTTP header sent in the request.
The following example demonstrates
"service":{"#type":"VarChar","#header":true,"#default":"scott/tiger","#eq":"X-Custom-Auth"}