Add head
and options
shortcut methods.
- Add
xml
support and anasXML
method to set the body format andContent-Type
header. - Add
adobe@2023
to testing matrix.
- Remove default
Content-Type
header. You must set this manually or use a format helper, such asasJson
. - Dropped
adobe@2016
support.
Correctly handle cases when the body
is a string and format is JSON
.
Add a debug
method to see what the HTTP client generates.
HyperHttpClientInterface
now requires a debug
method.
/**
* Return a struct of information showing how the client will execute the HyperRequest.
* This will be used by a developer to debug any differences between the generated
* request values and the expected request values.
*
* @req The HyperRequest to debug.
*
* @returns A struct of information detailing how the client would execute the HyperRequest.
*/
public struct function debug( required HyperRequest req );
- Do not prepend the base url when a full url is passed.
- Add
resolveUrls
andencodeUrl
properties to the memento. - Correctly set the
encodeUrl
property when cloning a request.
Update README for builder initWith
headers losing Content-Type
.
Fix HyperBuilder
example in the docs.
Allow adding multiple query params with the same key.
Previously, query params were stored as a struct. Some APIs expect multiple values for the same query param name to be passed as separate arguments. Hyper now stores the query params as an array and provides new methods for interacting with query params:
getQueryParamByName
getAllQueryParamsByName
withQueryParams
appendQueryParam
appendQueryParams
hasQueryParam
The following methods still exist, but now interact with arrays of query param structs instead of a simple struct.
The following methods have been deprecated:
Deprecated Method | Replacement Method |
---|---|
getQueryParam |
getQueryParamByName |
Convert array values correctly when sending form fields
Add a workaround for CommandBox not having the box:asyncManager
injection DSL.
Add async requests using ColdBox's AsyncManager.
- Provide more useful error than cfhttp when
throwOnErrors
is enabled. - Provide mementos for HyperRequest and HyperResponse instances.
- Capture statusText and provide a status convenience string.
Add MIT License file
Use processState
over announce
until CommandBox can update its interceptorService
.
- Add
forwardHeaders
shortcut method.
- Allow for default values in
getHeader
. - Add helper methods for checking for specific status codes:
Allowing attaching file uploads.
Support WireBox outside of ColdBox.
Include response data as detail in DeserializeJsonException
.
- Add
clone
to quickly copyHyperRequest
instances. - Add interceptors and local callbacks for lifecycle events.
Add execution time to HyperResponse
instances.
Dropped support for ColdBox 5.
- Add support for NTLM authentication.
- Include
getFullURL
method in docs.
Fixed typo of Bulider
to Builder
.
Add withoutEncodingUrl
flag.
Do not fail fast on cron job actions on CI.
Update fetch-depth for tests and release actions on CI.
Attempt to skip committing back changes on CI.
Add matrix and cron testing on CI.
Use better GitHub token on CI
Add workaround for boolean
values in query strings.
Add certificate auth.
Use the previous host for redirect if redirect does not include a full URL.
Add resolveUrls
flag.
- Use OpenJDK instead of OracleJDK on CI.
- Store module in ForgeBox Storage.
Allow for pluggable HTTP Clients that follow the HyperHttpClientInterface
. (Clients do not need to use the implements
keyword.)
Avoid double encoding using cfhttpparam
.
Remove Lucee 4.5 support from docs. (Support was dropped in v2.0.0)
Dropped support for [email protected]
.
Add throwOnError
flag.
Use 504 Gateway Timeout
for incomplete responses.
Include equal signs in query param values.
- Add
when
helper to execute conditions without breaking chaining. - Add
clear
method to reset HyperRequest instances. - Add configurable
timeout
.
- Fix for Lucee 4 compatibility on
LinkedHashMaps
andkeyArray
. - Preserve case in header names.
- Preserve case for query parameters.
- Serialize both params from the url and set on the
HyperRequest
instance. - Default to
UTF-8
charset if none is present in the response. - Fix withHeaders and withQueryParams for Lucee compatibility.
- Only map HyperBuilder as a singleton in WireBox
- Migrate to coldbox-modules organization on GitHub.
- Update
box.json
description. - Enable CommandBox Semantic Release on CI.