-
Notifications
You must be signed in to change notification settings - Fork 503
Closed
Labels
Description
Currently, we need to be a bit creative to attach files to a post request
// Create a boundary. We'll need it as we build the payload.
$boundary = md5( time() . $ext );
// End of Line
$eol = "\r\n";
// Construct the payload in multipart/form-data format
$payload = '';
$payload .= '--' . $boundary;
$payload .= $eol;
$payload .= 'Content-Disposition: form-data; name="submitted_file"; filename="' . $name . '"' . $eol;
$payload .= 'Content-Type: ' . $format . $eol;
$payload .= 'Content-Transfer-Encoding: binary' . $eol;
$payload .= $eol;
$payload .= $contents;
$payload .= $eol;
$payload .= '--' . $boundary . '--';
$payload .= $eol . $eol;
// Create args for wp_remote_request
$args = array(
'headers' => array(
'accept' => 'application/json',
'content-type' => 'multipart/form-data;boundary=' . $boundary,
),
);
// Call the standard request function and return it.
return $this->request( $api_method, $params, $http_method, $payload, $args );I would like to be able to pass an array of mixed objects and have it be handled as multipart form if it is a POST/PUT/OPTIONS/PATCH call
Describe alternatives you've considered
code like above
Additional context (optional)
- [X ] I am happy to help create a pull request to implement this feature myself.