diff --git a/api/.env.example b/api/.env.example index 30bbf331a4cb7e..01326a0cc8bc46 100644 --- a/api/.env.example +++ b/api/.env.example @@ -163,6 +163,8 @@ API_TOOL_DEFAULT_READ_TIMEOUT=60 HTTP_REQUEST_MAX_CONNECT_TIMEOUT=300 HTTP_REQUEST_MAX_READ_TIMEOUT=600 HTTP_REQUEST_MAX_WRITE_TIMEOUT=600 +HTTP_REQUEST_NODE_MAX_BINARY_SIZE=10485760 # 10MB +HTTP_REQUEST_NODE_MAX_TEXT_SIZE=1048576 # 1MB # Log file path LOG_FILE= diff --git a/api/core/workflow/nodes/http_request/http_executor.py b/api/core/workflow/nodes/http_request/http_executor.py index c2beb7a38340a6..1fb73afd126a3d 100644 --- a/api/core/workflow/nodes/http_request/http_executor.py +++ b/api/core/workflow/nodes/http_request/http_executor.py @@ -1,4 +1,5 @@ import json +import os from copy import deepcopy from random import randint from typing import Any, Optional, Union @@ -13,10 +14,10 @@ from core.workflow.nodes.http_request.entities import HttpRequestNodeData from core.workflow.utils.variable_template_parser import VariableTemplateParser -MAX_BINARY_SIZE = 1024 * 1024 * 10 # 10MB -READABLE_MAX_BINARY_SIZE = '10MB' -MAX_TEXT_SIZE = 1024 * 1024 // 10 # 0.1MB -READABLE_MAX_TEXT_SIZE = '0.1MB' +MAX_BINARY_SIZE = int(os.environ.get('HTTP_REQUEST_NODE_MAX_BINARY_SIZE', str(1024 * 1024 * 10))) # 10MB +READABLE_MAX_BINARY_SIZE = f'{MAX_BINARY_SIZE / 1024 / 1024:.2f}MB' +MAX_TEXT_SIZE = int(os.environ.get('HTTP_REQUEST_NODE_MAX_TEXT_SIZE', str(1024 * 1024))) # 10MB # 1MB +READABLE_MAX_TEXT_SIZE = f'{MAX_TEXT_SIZE / 1024 / 1024:.2f}MB' class HttpExecutorResponse: