set boundary

This commit is contained in:
Ankit Mahato
2024-03-10 23:27:00 +05:30
parent f9c32cddfd
commit 5776d9b840
3 changed files with 18 additions and 13 deletions

View File

@ -1,5 +1,6 @@
import 'package:apidash/models/models.dart' show RequestModel; import 'package:apidash/models/models.dart' show RequestModel;
import 'package:apidash/consts.dart'; import 'package:apidash/consts.dart';
import 'package:apidash/utils/utils.dart' show getNewUuid;
import 'dart/http.dart'; import 'dart/http.dart';
import 'dart/dio.dart'; import 'dart/dio.dart';
import 'kotlin/okhttp.dart'; import 'kotlin/okhttp.dart';
@ -14,8 +15,12 @@ class Codegen {
String? getCode( String? getCode(
CodegenLanguage codegenLanguage, CodegenLanguage codegenLanguage,
RequestModel requestModel, RequestModel requestModel,
String defaultUriScheme, String defaultUriScheme, {
) { String? boundary,
}) {
if (requestModel.isFormDataRequest) {
boundary = boundary ?? getNewUuid();
}
switch (codegenLanguage) { switch (codegenLanguage) {
case CodegenLanguage.curl: case CodegenLanguage.curl:
return cURLCodeGen().getCode(requestModel, defaultUriScheme); return cURLCodeGen().getCode(requestModel, defaultUriScheme);
@ -39,9 +44,10 @@ class Codegen {
return KotlinOkHttpCodeGen().getCode(requestModel, defaultUriScheme); return KotlinOkHttpCodeGen().getCode(requestModel, defaultUriScheme);
case CodegenLanguage.pythonHttpClient: case CodegenLanguage.pythonHttpClient:
return PythonHttpClientCodeGen() return PythonHttpClientCodeGen()
.getCode(requestModel, defaultUriScheme); .getCode(requestModel, defaultUriScheme, boundary);
case CodegenLanguage.pythonRequests: case CodegenLanguage.pythonRequests:
return PythonRequestsCodeGen().getCode(requestModel, defaultUriScheme); return PythonRequestsCodeGen()
.getCode(requestModel, defaultUriScheme, boundary);
} }
} }
} }

View File

@ -2,7 +2,7 @@ import 'dart:io';
import 'dart:convert'; import 'dart:convert';
import 'package:jinja/jinja.dart' as jj; import 'package:jinja/jinja.dart' as jj;
import 'package:apidash/utils/utils.dart' import 'package:apidash/utils/utils.dart'
show getNewUuid, getValidRequestUri, padMultilineString; show getValidRequestUri, padMultilineString;
import 'package:apidash/models/models.dart' show RequestModel; import 'package:apidash/models/models.dart' show RequestModel;
import 'package:apidash/consts.dart'; import 'package:apidash/consts.dart';
@ -89,9 +89,8 @@ body = b'\r\n'.join(dataList)
String? getCode( String? getCode(
RequestModel requestModel, RequestModel requestModel,
String defaultUriScheme, String defaultUriScheme,
String? boundary,
) { ) {
String uuid = getNewUuid();
try { try {
String result = ""; String result = "";
bool hasHeaders = false; bool hasHeaders = false;
@ -148,7 +147,7 @@ body = b'\r\n'.join(dataList)
var formHeaderTemplate = var formHeaderTemplate =
jj.Template(kTemplateFormHeaderContentType); jj.Template(kTemplateFormHeaderContentType);
headers[HttpHeaders.contentTypeHeader] = formHeaderTemplate.render({ headers[HttpHeaders.contentTypeHeader] = formHeaderTemplate.render({
"boundary": uuid, "boundary": boundary,
}); });
} }
@ -169,7 +168,7 @@ body = b'\r\n'.join(dataList)
result += formDataBodyData.render( result += formDataBodyData.render(
{ {
"fields_list": json.encode(requestModel.formDataMapList), "fields_list": json.encode(requestModel.formDataMapList),
"boundary": uuid, "boundary": boundary,
}, },
); );
} }

View File

@ -3,7 +3,7 @@ import 'dart:convert';
import 'package:jinja/jinja.dart' as jj; import 'package:jinja/jinja.dart' as jj;
import 'package:apidash/consts.dart'; import 'package:apidash/consts.dart';
import 'package:apidash/utils/utils.dart' import 'package:apidash/utils/utils.dart'
show getNewUuid, getValidRequestUri, padMultilineString, stripUriParams; show getValidRequestUri, padMultilineString, stripUriParams;
import 'package:apidash/models/models.dart' show RequestModel; import 'package:apidash/models/models.dart' show RequestModel;
class PythonRequestsCodeGen { class PythonRequestsCodeGen {
@ -94,6 +94,7 @@ print('Response Body:', response.text)
String? getCode( String? getCode(
RequestModel requestModel, RequestModel requestModel,
String defaultUriScheme, String defaultUriScheme,
String? boundary,
) { ) {
try { try {
String result = ""; String result = "";
@ -101,7 +102,6 @@ print('Response Body:', response.text)
bool hasHeaders = false; bool hasHeaders = false;
bool hasBody = false; bool hasBody = false;
bool hasJsonBody = false; bool hasJsonBody = false;
String uuid = getNewUuid();
String url = requestModel.url; String url = requestModel.url;
if (!url.contains("://") && url.isNotEmpty) { if (!url.contains("://") && url.isNotEmpty) {
@ -155,7 +155,7 @@ print('Response Body:', response.text)
var formHeaderTemplate = var formHeaderTemplate =
jj.Template(kTemplateFormHeaderContentType); jj.Template(kTemplateFormHeaderContentType);
headers[HttpHeaders.contentTypeHeader] = formHeaderTemplate.render({ headers[HttpHeaders.contentTypeHeader] = formHeaderTemplate.render({
"boundary": uuid, "boundary": boundary,
}); });
} }
if (headers.isNotEmpty || hasBody) { if (headers.isNotEmpty || hasBody) {
@ -175,7 +175,7 @@ print('Response Body:', response.text)
result += formDataBodyData.render( result += formDataBodyData.render(
{ {
"fields_list": json.encode(requestModel.formDataMapList), "fields_list": json.encode(requestModel.formDataMapList),
"boundary": uuid, "boundary": boundary,
}, },
); );
} }