fix: allow None AuthorizationConfig

This commit is contained in:
Yeuoly
2024-03-13 20:40:37 +08:00
committed by takatost
parent e5ff06bcb7
commit 0614ddde7d
2 changed files with 45 additions and 2 deletions

View File

@ -1,6 +1,6 @@
from typing import Literal, Optional, Union
from pydantic import BaseModel
from pydantic import BaseModel, validator
from core.workflow.entities.base_node_data_entities import BaseNodeData
from core.workflow.entities.variable_entities import VariableSelector
@ -17,7 +17,20 @@ class HttpRequestNodeData(BaseNodeData):
header: Union[None, str]
type: Literal['no-auth', 'api-key']
config: Config
config: Optional[Config]
@validator('config', always=True, pre=True)
def check_config(cls, v, values):
"""
Check config, if type is no-auth, config should be None, otherwise it should be a dict.
"""
if values['type'] == 'no-auth':
return None
else:
if not v or not isinstance(v, dict):
raise ValueError('config should be a dict')
return v
class Body(BaseModel):
type: Literal[None, 'form-data', 'x-www-form-urlencoded', 'raw', 'json']