Skip to content
This repository was archived by the owner on Dec 25, 2024. It is now read-only.

Commit 6359a5c

Browse files
committed
Sample regenerated
1 parent 85990b6 commit 6359a5c

File tree

2 files changed

+9
-17
lines changed

2 files changed

+9
-17
lines changed

modules/openapi-json-schema-generator/src/main/resources/python/api_client.handlebars

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1404,7 +1404,6 @@ class RequestBody(StyleFormSerializer, JSONDetector):
14041404
return request_field
14051405

14061406
def __multipart_form_item(self, key: str, value: Schema) -> RequestField:
1407-
content_type = None
14081407
if isinstance(value, str):
14091408
request_field = RequestField(name=key, data=str(value))
14101409
request_field.make_multipart(content_type='text/plain')

samples/openapi3/client/petstore/python/petstore_api/api_client.py

Lines changed: 9 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1398,30 +1398,23 @@ def __serialize_text_plain(in_data: typing.Any) -> typing.Dict[str, str]:
13981398

13991399
def __multipart_json_item(self, key: str, value: Schema) -> RequestField:
14001400
json_value = self.__json_encoder.default(value)
1401-
return RequestField(name=key, data=json.dumps(json_value), headers={'Content-Type': 'application/json'})
1401+
request_field = RequestField(name=key, data=json.dumps(json_value))
1402+
request_field.make_multipart(content_type='application/json')
1403+
return request_field
14021404

14031405
def __multipart_form_item(self, key: str, value: Schema) -> RequestField:
1404-
content_type = None
14051406
if isinstance(value, str):
1406-
content_type = 'text/plain'
1407-
request_field = RequestField(name=key, data=str(value), headers={'Content-Type': 'text/plain'})
1407+
request_field = RequestField(name=key, data=str(value))
1408+
request_field.make_multipart(content_type='text/plain')
14081409
elif isinstance(value, bytes):
1409-
content_type = 'application/octet-stream'
1410-
request_field = RequestField(name=key, data=value, headers={'Content-Type': 'application/octet-stream'})
1410+
request_field = RequestField(name=key, data=value)
1411+
request_field.make_multipart(content_type='application/octet-stream')
14111412
elif isinstance(value, FileIO):
1412-
# TODO get content type using urllib3
1413-
content_type = 'application/octet-stream'
1414-
request_field = RequestField(
1415-
name=key,
1416-
data=value.read(),
1417-
filename=os.path.basename(value.name),
1418-
headers={'Content-Type': 'application/octet-stream'}
1419-
)
1413+
# TODO use content.encoding to limit allowed content types if they are present
1414+
request_field = RequestField.from_tuple(key, (os.path.basename(value.name), value.read()))
14201415
value.close()
14211416
else:
1422-
content_type = 'application/json'
14231417
request_field = self.__multipart_json_item(key=key, value=value)
1424-
request_field.make_multipart(content_type=content_type)
14251418
return request_field
14261419

14271420
def __serialize_multipart_form_data(

0 commit comments

Comments
 (0)