forked from loafle/openapi-generator-original
[Java][RestTemplate] Fix query parameter URL encoding (#260)
* add URL encoding to the query parameters in case they have unsafe characters * add comment * update generated samples
This commit is contained in:
parent
a2c27ba8a6
commit
43b60e667e
@ -46,6 +46,7 @@ import java.io.IOException;
|
|||||||
import java.io.InputStream;
|
import java.io.InputStream;
|
||||||
import java.io.InputStreamReader;
|
import java.io.InputStreamReader;
|
||||||
import java.io.UnsupportedEncodingException;
|
import java.io.UnsupportedEncodingException;
|
||||||
|
import java.net.URLEncoder;
|
||||||
import java.nio.charset.StandardCharsets;
|
import java.nio.charset.StandardCharsets;
|
||||||
import java.text.DateFormat;
|
import java.text.DateFormat;
|
||||||
import java.text.ParseException;
|
import java.text.ParseException;
|
||||||
@ -527,6 +528,18 @@ public class ApiClient {
|
|||||||
|
|
||||||
final UriComponentsBuilder builder = UriComponentsBuilder.fromHttpUrl(basePath).path(path);
|
final UriComponentsBuilder builder = UriComponentsBuilder.fromHttpUrl(basePath).path(path);
|
||||||
if (queryParams != null) {
|
if (queryParams != null) {
|
||||||
|
//encode the query parameters in case they contain unsafe characters
|
||||||
|
for (List<String> values : queryParams.values()) {
|
||||||
|
if (values != null) {
|
||||||
|
for (int i = 0; i < values.size(); i++) {
|
||||||
|
try {
|
||||||
|
values.set(i, URLEncoder.encode(values.get(i), "utf8"));
|
||||||
|
} catch (UnsupportedEncodingException e) {
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
builder.queryParams(queryParams);
|
builder.queryParams(queryParams);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -40,6 +40,7 @@ import java.io.IOException;
|
|||||||
import java.io.InputStream;
|
import java.io.InputStream;
|
||||||
import java.io.InputStreamReader;
|
import java.io.InputStreamReader;
|
||||||
import java.io.UnsupportedEncodingException;
|
import java.io.UnsupportedEncodingException;
|
||||||
|
import java.net.URLEncoder;
|
||||||
import java.nio.charset.StandardCharsets;
|
import java.nio.charset.StandardCharsets;
|
||||||
import java.text.DateFormat;
|
import java.text.DateFormat;
|
||||||
import java.text.ParseException;
|
import java.text.ParseException;
|
||||||
@ -520,6 +521,18 @@ public class ApiClient {
|
|||||||
|
|
||||||
final UriComponentsBuilder builder = UriComponentsBuilder.fromHttpUrl(basePath).path(path);
|
final UriComponentsBuilder builder = UriComponentsBuilder.fromHttpUrl(basePath).path(path);
|
||||||
if (queryParams != null) {
|
if (queryParams != null) {
|
||||||
|
//encode the query parameters in case they contain unsafe characters
|
||||||
|
for (List<String> values : queryParams.values()) {
|
||||||
|
if (values != null) {
|
||||||
|
for (int i = 0; i < values.size(); i++) {
|
||||||
|
try {
|
||||||
|
values.set(i, URLEncoder.encode(values.get(i), "utf8"));
|
||||||
|
} catch (UnsupportedEncodingException e) {
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
builder.queryParams(queryParams);
|
builder.queryParams(queryParams);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -35,6 +35,7 @@ import java.io.IOException;
|
|||||||
import java.io.InputStream;
|
import java.io.InputStream;
|
||||||
import java.io.InputStreamReader;
|
import java.io.InputStreamReader;
|
||||||
import java.io.UnsupportedEncodingException;
|
import java.io.UnsupportedEncodingException;
|
||||||
|
import java.net.URLEncoder;
|
||||||
import java.nio.charset.StandardCharsets;
|
import java.nio.charset.StandardCharsets;
|
||||||
import java.text.DateFormat;
|
import java.text.DateFormat;
|
||||||
import java.text.ParseException;
|
import java.text.ParseException;
|
||||||
@ -515,6 +516,18 @@ public class ApiClient {
|
|||||||
|
|
||||||
final UriComponentsBuilder builder = UriComponentsBuilder.fromHttpUrl(basePath).path(path);
|
final UriComponentsBuilder builder = UriComponentsBuilder.fromHttpUrl(basePath).path(path);
|
||||||
if (queryParams != null) {
|
if (queryParams != null) {
|
||||||
|
//encode the query parameters in case they contain unsafe characters
|
||||||
|
for (List<String> values : queryParams.values()) {
|
||||||
|
if (values != null) {
|
||||||
|
for (int i = 0; i < values.size(); i++) {
|
||||||
|
try {
|
||||||
|
values.set(i, URLEncoder.encode(values.get(i), "utf8"));
|
||||||
|
} catch (UnsupportedEncodingException e) {
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
builder.queryParams(queryParams);
|
builder.queryParams(queryParams);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user