WC_API_Authentication::normalize_parameters()
Normalize each parameter by assuming each parameter may have already been encoded, so attempt to decode, and then re-encode according to RFC 3986
Note both the key and value is normalized so a filter param like:
'filter[period]' => 'week'
is encoded to:
'filter%5Bperiod%5D' => 'week'
This conforms to the OAuth 1.0a spec which indicates the entire query string should be URL encoded
Method of the class: WC_API_Authentication{}
No Hooks.
Return
Array
. normalized parameters
Usage
// private - for code of main (parent) class only $result = $this->normalize_parameters( $parameters );
- $parameters(array) (required)
- un-normalized parameters
Notes
- See: rawurlencode()
Changelog
Since 2.1 | Introduced. |
WC_API_Authentication::normalize_parameters() WC API Authentication::normalize parameters code WC 7.7.0
private function normalize_parameters( $parameters ) { $normalized_parameters = array(); foreach ( $parameters as $key => $value ) { // Percent symbols (%) must be double-encoded $key = str_replace( '%', '%25', rawurlencode( rawurldecode( $key ) ) ); $value = str_replace( '%', '%25', rawurlencode( rawurldecode( $value ) ) ); $normalized_parameters[ $key ] = $value; } return $normalized_parameters; }