Skip to content

Commit ade61c0

Browse files
committed
Support http body in OPTIONS request in python client
1 parent bd63c1d commit ade61c0

File tree

4 files changed

+20
-12
lines changed

4 files changed

+20
-12
lines changed

modules/swagger-codegen/src/main/resources/python/api_client.mustache

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -341,7 +341,9 @@ class ApiClient(object):
341341
elif method == "OPTIONS":
342342
return self.rest_client.OPTIONS(url,
343343
query_params=query_params,
344-
headers=headers)
344+
headers=headers,
345+
post_params=post_params,
346+
body=body)
345347
elif method == "POST":
346348
return self.rest_client.POST(url,
347349
query_params=query_params,

modules/swagger-codegen/src/main/resources/python/rest.mustache

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -117,8 +117,8 @@ class RESTClientObject(object):
117117
headers['Content-Type'] = 'application/json'
118118

119119
try:
120-
# For `POST`, `PUT`, `PATCH`
121-
if method in ['POST', 'PUT', 'PATCH']:
120+
# For `POST`, `PUT`, `PATCH`, `OPTIONS`
121+
if method in ['POST', 'PUT', 'PATCH', 'OPTIONS']:
122122
if query_params:
123123
url += '?' + urlencode(query_params)
124124
if headers['Content-Type'] == 'application/json':
@@ -138,7 +138,7 @@ class RESTClientObject(object):
138138
fields=post_params,
139139
encode_multipart=True,
140140
headers=headers)
141-
# For `GET`, `HEAD`, `DELETE`, `OPTIONS`
141+
# For `GET`, `HEAD`, `DELETE`
142142
else:
143143
r = self.pool_manager.request(method, url,
144144
fields=query_params,
@@ -172,10 +172,12 @@ class RESTClientObject(object):
172172
headers=headers,
173173
query_params=query_params)
174174

175-
def OPTIONS(self, url, headers=None, query_params=None):
175+
def OPTIONS(self, url, headers=None, query_params=None, post_params=None, body=None):
176176
return self.request("OPTIONS", url,
177177
headers=headers,
178-
query_params=query_params)
178+
query_params=query_params,
179+
post_params=post_params,
180+
body=body)
179181

180182
def DELETE(self, url, headers=None, query_params=None):
181183
return self.request("DELETE", url,

samples/client/petstore/python/swagger_client/api_client.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -341,7 +341,9 @@ def request(self, method, url, query_params=None, headers=None,
341341
elif method == "OPTIONS":
342342
return self.rest_client.OPTIONS(url,
343343
query_params=query_params,
344-
headers=headers)
344+
headers=headers,
345+
post_params=post_params,
346+
body=body)
345347
elif method == "POST":
346348
return self.rest_client.POST(url,
347349
query_params=query_params,

samples/client/petstore/python/swagger_client/rest.py

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -117,8 +117,8 @@ def request(self, method, url, query_params=None, headers=None,
117117
headers['Content-Type'] = 'application/json'
118118

119119
try:
120-
# For `POST`, `PUT`, `PATCH`
121-
if method in ['POST', 'PUT', 'PATCH']:
120+
# For `POST`, `PUT`, `PATCH`, `OPTIONS`
121+
if method in ['POST', 'PUT', 'PATCH', 'OPTIONS']:
122122
if query_params:
123123
url += '?' + urlencode(query_params)
124124
if headers['Content-Type'] == 'application/json':
@@ -138,7 +138,7 @@ def request(self, method, url, query_params=None, headers=None,
138138
fields=post_params,
139139
encode_multipart=True,
140140
headers=headers)
141-
# For `GET`, `HEAD`, `DELETE`, `OPTIONS`
141+
# For `GET`, `HEAD`, `DELETE`
142142
else:
143143
r = self.pool_manager.request(method, url,
144144
fields=query_params,
@@ -172,10 +172,12 @@ def HEAD(self, url, headers=None, query_params=None):
172172
headers=headers,
173173
query_params=query_params)
174174

175-
def OPTIONS(self, url, headers=None, query_params=None):
175+
def OPTIONS(self, url, headers=None, query_params=None, post_params=None, body=None):
176176
return self.request("OPTIONS", url,
177177
headers=headers,
178-
query_params=query_params)
178+
query_params=query_params,
179+
post_params=post_params,
180+
body=body)
179181

180182
def DELETE(self, url, headers=None, query_params=None):
181183
return self.request("DELETE", url,

0 commit comments

Comments
 (0)