Created by: LeComptoirDesPharmacies
Remove undefined values from headers
I have encountered this issues when I want to pass an api key in the request but the endpoint support multiple header api key.
So I use a fonction to set the right api key and set the other api key to undefined.
With this code :
function getFirstApiKey(keyName) {
if (keyName === 'first-api-key') {
return "my-key-value";
}
return undefined;
};
The generated code for api key in the api endpoint :
if (this.configuration && this.configuration.apiKey) {
headerParameters["first-api-key"] = this.configuration.apiKey("first-api-key"); // first-api-key authentication
}
if (this.configuration && this.configuration.apiKey) {
headerParameters["second-api-key"] = this.configuration.apiKey("second-api-key"); // second-api-key authentication
}
The generated apiKey function :
get apiKey(): ((name: string) => string) | undefined {
const apiKey = this.configuration.apiKey;
if (apiKey) {
return typeof apiKey === 'function' ? apiKey : () => apiKey;
}
return undefined;
}
Result headers :
first-api-key: my-key-value
second-api-key: undefined
Expected headers :
first-api-key: my-key-value
The headers was send with the two api key with one with the right value and the other with undefined as a string
To fix this issues, just remove any header who has undefined as value.
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: Commit all changed files. This is important, as CI jobs will verify all generator outputs of your HEAD commit as it would merge with master. These must match the expectations made by your contribution. You may regenerate an individual generator by passing the relevant config(s) as an argument to the script, for example./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.
@TiFu (2017/07) @taxpon (2017/07) @sebastianhaas (2017/07) @kenisteward (2017/07) @Vrolijkx (2017/09) @macjohnny (2018/01) @topce (2018/10) @akehir (2019/07) @petejohansonxo (2019/11) @amakhrov (2020/02)
Thanks for the review