瀏覽代碼

fix(http_request): handle empty and string data inputs (#9579)

tags/0.10.1
-LAN- 1 年之前
父節點
當前提交
38a4f0234d
No account linked to committer's email address
共有 1 個文件被更改,包括 11 次插入1 次删除
  1. 11
    1
      api/core/workflow/nodes/http_request/entities.py

+ 11
- 1
api/core/workflow/nodes/http_request/entities.py 查看文件

@@ -1,5 +1,5 @@
from collections.abc import Sequence
from typing import Literal, Optional
from typing import Any, Literal, Optional

import httpx
from pydantic import BaseModel, Field, ValidationInfo, field_validator
@@ -52,6 +52,16 @@ class HttpRequestNodeBody(BaseModel):
type: Literal["none", "form-data", "x-www-form-urlencoded", "raw-text", "json", "binary"]
data: Sequence[BodyData] = Field(default_factory=list)

@field_validator("data", mode="before")
@classmethod
def check_data(cls, v: Any):
"""For compatibility, if body is not set, return empty list."""
if not v:
return []
if isinstance(v, str):
return [BodyData(key="", type="text", value=v)]
return v


class HttpRequestNodeTimeout(BaseModel):
connect: int = dify_config.HTTP_REQUEST_MAX_CONNECT_TIMEOUT

Loading…
取消
儲存