Skip to content

Commit 44a20ed

Browse files
committed
fix: Fixed issue where reserved headers were added to the request instead of the content
1 parent f1935af commit 44a20ed

1 file changed

Lines changed: 35 additions & 18 deletions

File tree

  • modules/openapi-generator/src/main/resources/csharp/libraries/generichost

modules/openapi-generator/src/main/resources/csharp/libraries/generichost/api.mustache

Lines changed: 35 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -160,6 +160,21 @@ namespace {{packageName}}.{{apiPackage}}
160160
{
161161
private JsonSerializerOptions _jsonSerializerOptions;
162162
163+
private readonly string[] _contentHeaders =
164+
[
165+
"allow",
166+
"content-encoding",
167+
"content-language",
168+
"content-length",
169+
"content-location",
170+
"content-md5",
171+
"content-range",
172+
"content-type",
173+
"expires",
174+
"last-modified",
175+
"extension-header"
176+
];
177+
163178
/// <summary>
164179
/// The logger factory
165180
/// </summary>
@@ -452,23 +467,6 @@ namespace {{packageName}}.{{apiPackage}}
452467

453468
{{/-last}}
454469
{{/queryParams}}
455-
{{#constantParams}}
456-
{{#isHeaderParam}}
457-
// Set client side default value of Header Param "{{baseName}}".
458-
httpRequestMessageLocalVar.Headers.Add("{{baseName}}", ClientUtils.ParameterToString({{#_enum}}"{{{.}}}"{{/_enum}})); // Constant header parameter
459-
{{/isHeaderParam}}
460-
{{/constantParams}}
461-
{{#headerParams}}
462-
{{#required}}
463-
httpRequestMessageLocalVar.Headers.Add("{{baseName}}", ClientUtils.ParameterToString({{paramName}}));
464-
465-
{{/required}}
466-
{{^required}}
467-
if ({{paramName}}.IsSet)
468-
httpRequestMessageLocalVar.Headers.Add("{{baseName}}", ClientUtils.ParameterToString({{paramName}}.Value));
469-
470-
{{/required}}
471-
{{/headerParams}}
472470
{{#formParams}}
473471
{{#-first}}
474472
{{#isMultipart}}
@@ -573,6 +571,25 @@ namespace {{packageName}}.{{apiPackage}}
573571
{{/required}}
574572

575573
{{/bodyParam}}
574+
575+
{{/required}}
576+
{{^required}}
577+
if ({{paramName}}.IsSet)
578+
{
579+
// Set client side default value of Header Param "{{baseName}}".
580+
if (_contentHeaders.Contains("{{baseName}}".ToLowerInvariant()))
581+
{
582+
httpRequestMessageLocalVar.Content.Headers.Add("{{baseName}}", ClientUtils.ParameterToString({{paramName}}.Value));
583+
}
584+
else
585+
{
586+
httpRequestMessageLocalVar.Headers.Add("{{baseName}}", ClientUtils.ParameterToString({{paramName}}.Value));
587+
}
588+
}
589+
590+
{{/required}}
591+
{{/headerParams}}
592+
576593
{{#authMethods}}
577594
{{#-first}}
578595
List<TokenBase> tokenBaseLocalVars = new List<TokenBase>();
@@ -907,4 +924,4 @@ namespace {{packageName}}.{{apiPackage}}
907924
}
908925
{{/operations}}
909926
}
910-
{{/lambda.trimLineBreaks}}
927+
{{/lambda.trimLineBreaks}}

0 commit comments

Comments
 (0)