mirror of https://github.com/langgenius/dify.git
feat: http request
This commit is contained in:
parent
a0fd731170
commit
193bcce236
|
|
@ -1,6 +1,5 @@
|
|||
from typing import Optional, Union, cast
|
||||
|
||||
from core.workflow.entities.base_node_data_entities import BaseNodeData
|
||||
from core.workflow.entities.node_entities import NodeRunResult, NodeType
|
||||
from core.workflow.entities.variable_pool import VariablePool
|
||||
from core.workflow.nodes.base_node import BaseNode
|
||||
|
|
|
|||
|
|
@ -0,0 +1,31 @@
|
|||
from typing import Literal, Union
|
||||
|
||||
from pydantic import BaseModel
|
||||
|
||||
from core.workflow.entities.base_node_data_entities import BaseNodeData
|
||||
from core.workflow.entities.variable_entities import VariableSelector
|
||||
|
||||
|
||||
class HttpRequestNodeData(BaseNodeData):
|
||||
"""
|
||||
Code Node Data.
|
||||
"""
|
||||
class Authorization(BaseModel):
|
||||
class Config(BaseModel):
|
||||
type: Literal[None, 'basic', 'bearer', 'custom']
|
||||
api_key: Union[None, str]
|
||||
header: Union[None, str]
|
||||
|
||||
type: Literal['no-auth', 'api-key']
|
||||
|
||||
class Body(BaseModel):
|
||||
type: Literal[None, 'form-data', 'x-www-form-urlencoded', 'raw']
|
||||
data: Union[None, str]
|
||||
|
||||
variables: list[VariableSelector]
|
||||
method: Literal['get', 'post', 'put', 'patch', 'delete']
|
||||
url: str
|
||||
authorization: Authorization
|
||||
headers: str
|
||||
params: str
|
||||
|
||||
|
|
@ -1,5 +1,21 @@
|
|||
from core.workflow.entities.base_node_data_entities import BaseNodeData
|
||||
from core.workflow.entities.node_entities import NodeRunResult, NodeType
|
||||
from core.workflow.entities.variable_pool import VariablePool
|
||||
from core.workflow.nodes.base_node import BaseNode
|
||||
|
||||
from core.workflow.nodes.http_request.entities import HttpRequestNodeData
|
||||
|
||||
class HttpRequestNode(BaseNode):
|
||||
pass
|
||||
_node_data_cls = HttpRequestNodeData
|
||||
node_type = NodeType.HTTP_REQUEST
|
||||
|
||||
def _run(self, variable_pool: VariablePool) -> NodeRunResult:
|
||||
pass
|
||||
|
||||
@classmethod
|
||||
def _extract_variable_selector_to_variable_mapping(cls, node_data: BaseNodeData) -> dict[list[str], str]:
|
||||
"""
|
||||
Extract variable selector to variable mapping
|
||||
:param node_data: node data
|
||||
:return:
|
||||
"""
|
||||
pass
|
||||
Loading…
Reference in New Issue