Skip to content

Commit 52c63bb

Browse files
Ghufzwing328
andauthored
Fixed the query string for HttpSigning core vs dotnet47 (#8189)
* Fixed the query string for HttpSigning core vs dotnet47 * updated the sample * replace the tab with space * update samples Co-authored-by: William Cheng <wing328hk@gmail.com>
1 parent a407090 commit 52c63bb

File tree

4 files changed

+68
-16
lines changed

4 files changed

+68
-16
lines changed

modules/openapi-generator/src/main/resources/csharp-netcore/HttpSigningConfiguration.mustache

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -123,6 +123,7 @@ namespace {{packageName}}.Client
123123
var httpValues = HttpUtility.ParseQueryString(String.Empty);
124124
foreach (var parameter in requestOptions.QueryParameters)
125125
{
126+
#if (NETCOREAPP)
126127
if (parameter.Value.Count > 1)
127128
{ // array
128129
foreach (var value in parameter.Value)
@@ -132,13 +133,25 @@ namespace {{packageName}}.Client
132133
}
133134
else
134135
{
135-
httpValues.Add(HttpUtility.UrlEncode(parameter.Key), parameter.Value[0]);
136-
136+
httpValues.Add(HttpUtility.UrlEncode(parameter.Key), parameter.Value[0]);
137137
}
138+
#else
139+
if (parameter.Value.Count > 1)
140+
{ // array
141+
foreach (var value in parameter.Value)
142+
{
143+
httpValues.Add(parameter.Key + "[]", value);
144+
}
145+
}
146+
else
147+
{
148+
httpValues.Add(parameter.Key, parameter.Value[0]);
149+
}
150+
#endif
138151
}
139152
var uriBuilder = new UriBuilder(string.Concat(basePath, path));
140-
uriBuilder.Query = httpValues.ToString();
141-
153+
uriBuilder.Query = httpValues.ToString().Replace("+", "%20");
154+
142155
var dateTime = DateTime.Now;
143156
String Digest = String.Empty;
144157

samples/client/petstore/csharp-netcore/OpenAPIClient-net47/src/Org.OpenAPITools/Client/HttpSigningConfiguration.cs

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -123,6 +123,7 @@ internal Dictionary<string, string> GetHttpSignedHeader(string basePath,string m
123123
var httpValues = HttpUtility.ParseQueryString(String.Empty);
124124
foreach (var parameter in requestOptions.QueryParameters)
125125
{
126+
#if (NETCOREAPP)
126127
if (parameter.Value.Count > 1)
127128
{ // array
128129
foreach (var value in parameter.Value)
@@ -132,13 +133,25 @@ internal Dictionary<string, string> GetHttpSignedHeader(string basePath,string m
132133
}
133134
else
134135
{
135-
httpValues.Add(HttpUtility.UrlEncode(parameter.Key), parameter.Value[0]);
136-
136+
httpValues.Add(HttpUtility.UrlEncode(parameter.Key), parameter.Value[0]);
137137
}
138+
#else
139+
if (parameter.Value.Count > 1)
140+
{ // array
141+
foreach (var value in parameter.Value)
142+
{
143+
httpValues.Add(parameter.Key + "[]", value);
144+
}
145+
}
146+
else
147+
{
148+
httpValues.Add(parameter.Key, parameter.Value[0]);
149+
}
150+
#endif
138151
}
139152
var uriBuilder = new UriBuilder(string.Concat(basePath, path));
140-
uriBuilder.Query = httpValues.ToString();
141-
153+
uriBuilder.Query = httpValues.ToString().Replace("+", "%20");
154+
142155
var dateTime = DateTime.Now;
143156
String Digest = String.Empty;
144157

samples/client/petstore/csharp-netcore/OpenAPIClient/src/Org.OpenAPITools/Client/HttpSigningConfiguration.cs

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -123,6 +123,7 @@ internal Dictionary<string, string> GetHttpSignedHeader(string basePath,string m
123123
var httpValues = HttpUtility.ParseQueryString(String.Empty);
124124
foreach (var parameter in requestOptions.QueryParameters)
125125
{
126+
#if (NETCOREAPP)
126127
if (parameter.Value.Count > 1)
127128
{ // array
128129
foreach (var value in parameter.Value)
@@ -132,13 +133,25 @@ internal Dictionary<string, string> GetHttpSignedHeader(string basePath,string m
132133
}
133134
else
134135
{
135-
httpValues.Add(HttpUtility.UrlEncode(parameter.Key), parameter.Value[0]);
136-
136+
httpValues.Add(HttpUtility.UrlEncode(parameter.Key), parameter.Value[0]);
137137
}
138+
#else
139+
if (parameter.Value.Count > 1)
140+
{ // array
141+
foreach (var value in parameter.Value)
142+
{
143+
httpValues.Add(parameter.Key + "[]", value);
144+
}
145+
}
146+
else
147+
{
148+
httpValues.Add(parameter.Key, parameter.Value[0]);
149+
}
150+
#endif
138151
}
139152
var uriBuilder = new UriBuilder(string.Concat(basePath, path));
140-
uriBuilder.Query = httpValues.ToString();
141-
153+
uriBuilder.Query = httpValues.ToString().Replace("+", "%20");
154+
142155
var dateTime = DateTime.Now;
143156
String Digest = String.Empty;
144157

samples/client/petstore/csharp-netcore/OpenAPIClientCore/src/Org.OpenAPITools/Client/HttpSigningConfiguration.cs

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -123,6 +123,7 @@ internal Dictionary<string, string> GetHttpSignedHeader(string basePath,string m
123123
var httpValues = HttpUtility.ParseQueryString(String.Empty);
124124
foreach (var parameter in requestOptions.QueryParameters)
125125
{
126+
#if (NETCOREAPP)
126127
if (parameter.Value.Count > 1)
127128
{ // array
128129
foreach (var value in parameter.Value)
@@ -132,13 +133,25 @@ internal Dictionary<string, string> GetHttpSignedHeader(string basePath,string m
132133
}
133134
else
134135
{
135-
httpValues.Add(HttpUtility.UrlEncode(parameter.Key), parameter.Value[0]);
136-
136+
httpValues.Add(HttpUtility.UrlEncode(parameter.Key), parameter.Value[0]);
137137
}
138+
#else
139+
if (parameter.Value.Count > 1)
140+
{ // array
141+
foreach (var value in parameter.Value)
142+
{
143+
httpValues.Add(parameter.Key + "[]", value);
144+
}
145+
}
146+
else
147+
{
148+
httpValues.Add(parameter.Key, parameter.Value[0]);
149+
}
150+
#endif
138151
}
139152
var uriBuilder = new UriBuilder(string.Concat(basePath, path));
140-
uriBuilder.Query = httpValues.ToString();
141-
153+
uriBuilder.Query = httpValues.ToString().Replace("+", "%20");
154+
142155
var dateTime = DateTime.Now;
143156
String Digest = String.Empty;
144157

0 commit comments

Comments
 (0)