[CSHARP] Default headers overwritten instead of duplicated | Body par…#20290
[CSHARP] Default headers overwritten instead of duplicated | Body par…#20290maciejcymanski132 wants to merge 1 commit intoOpenAPITools:masterfrom
Conversation
…ameter in post request serialized
|
Just FYI, running on a windows environment causes the \ and / differences as well as line ending changes which the build bot notices. I had to run my builds in a WSL environment which made the changes much cleaner. |
|
i've flied #20415 with updated samples. let's see if all the tests pass |
|
https://github.com/OpenAPITools/openapi-generator/actions/runs/12668462049/job/35310177390 CI tests with updated samples failed - particularly for .net standard 2.0 samples. @maciejcymanski132 can you please take a look when you've time? UPDATE: the CI test failure has nothing to do with this PR. I address it in #20421 instead. |
can you please elaborate on the issue with examples? |
|
FYI. Merged #20421 to fix the duplicated header issue |
FYI. We do have integration tests in-place to ensure the POST with request body (e.g. Pet) works: https://github.com/OpenAPITools/openapi-generator/blob/master/samples/client/petstore/csharp/restsharp/standard2.0/Petstore/src/Org.OpenAPITools.Test/Api/PetApiTests.cs#L222 |
| {{/formParams}} | ||
| {{#bodyParam}} | ||
| localVarRequestOptions.Data = {{paramName}}; | ||
| localVarRequestOptions.Data = {{packageName}}.Client.ClientUtils.Serialize({{paramName}}); |
There was a problem hiding this comment.
it's serialized later in ApiClient.cs for "JSON" related payload:
does your content type ends with json?
@mandrean @shibayan @Blackclaws
Hello,
I fixed two issues I ran into recently.
First, when both the default configuration and the request options added the same header (like Authorization), the header was duplicated. Now, the request options override the default headers so that the header only appears once.
Second, there was a problem with how POST request bodies were being serialized. They were missing quotes and other formatting details, causing errors on the server. I’ve updated the serialization process to ensure the body is formatted correctly.
Please let me know if you need any changes.
PR checklist
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
./bin/generate-samples.sh bin/configs/java*.IMPORTANT: Do NOT purge/delete any folders/files (e.g. tests) when regenerating the samples as manually written tests may be removed.
master(upcoming7.x.0minor release - breaking changes with fallbacks),8.0.x(breaking changes without fallbacks)