Created by: icubbon
The Go client will iterate over the files for a multipart/form-data request and add each file to a slice of formFiles
.
Added a private struct formFile
that contains the already defined values of a formFile
. A Request now creates an empty slice of formFiles
in which files are appended into.
The prepareRequest
function will now iterate over the slice of formFiles
to add each one to the request.
Addresses https://github.com/OpenAPITools/openapi-generator/issues/8322
An example snippet of a schema that has the problem being addressed, note the second file in the multipart/form-data request body:
"/pet/{petId}/uploadImage":
post:
tags:
- pet
summary: uploads an image
description: ""
operationId: uploadFile
parameters:
- name: petId
in: path
description: ID of pet to update
required: true
schema:
type: integer
format: int64
responses:
"200":
description: successful operation
content:
application/json:
schema:
$ref: "#/components/schemas/ApiResponse"
security:
- petstore_auth:
- "write:pets"
- "read:pets"
requestBody:
content:
multipart/form-data:
schema:
type: object
properties:
additionalMetadata:
description: Additional data to pass to server
type: string
file:
description: file to upload
type: string
format: binary
secondFile:
description: another file to upload
type: string
format: binary
@antihax @grokify @kemokemo @jirikuncar @ph4r5h4d
PR checklist
-
Read the contribution guidelines. -
Pull Request title clearly describes the work in the pull request and Pull Request description provides details about how to validate the work. Missing information here may result in delayed response from the community. -
Run the following to build the project and update samples: ./mvnw clean package ./bin/generate-samples.sh ./bin/utils/export_docs_generators.sh
./bin/generate-samples.sh bin/configs/java*
. For Windows users, please run the script in Git BASH. -
File the PR against the correct branch: master
(5.3.0),6.0.x
-
If your PR is targeting a particular programming language, @mention the technical committee members, so they are more likely to review the pull request.