瀏覽代碼

fix: set method to POST when body exists (#14523) (#14524)

Jiakaic 1 月之前
父節點
當前提交
be18b103b7
共有 1 個文件被更改,包括 6 次插入1 次删除
  1. 6 1
      web/app/components/workflow/nodes/http/components/curl-panel.tsx

+ 6 - 1
web/app/components/workflow/nodes/http/components/curl-panel.tsx

@@ -22,13 +22,14 @@ const parseCurl = (curlCommand: string): { node: HttpNodeType | null; error: str
   const node: Partial<HttpNodeType> = {
     title: 'HTTP Request',
     desc: 'Imported from cURL',
-    method: Method.get,
+    method: undefined,
     url: '',
     headers: '',
     params: '',
     body: { type: BodyType.none, data: '' },
   }
   const args = curlCommand.match(/(?:[^\s"']+|"[^"]*"|'[^']*')+/g) || []
+  let hasData = false
 
   for (let i = 1; i < args.length; i++) {
     const arg = args[i].replace(/^['"]|['"]$/g, '')
@@ -38,6 +39,7 @@ const parseCurl = (curlCommand: string): { node: HttpNodeType | null; error: str
         if (i + 1 >= args.length)
           return { node: null, error: 'Missing HTTP method after -X or --request.' }
         node.method = (args[++i].replace(/^['"]|['"]$/g, '') as Method) || Method.get
+        hasData = true
         break
       case '-H':
       case '--header':
@@ -89,6 +91,9 @@ const parseCurl = (curlCommand: string): { node: HttpNodeType | null; error: str
     }
   }
 
+  // Determine final method
+  node.method = node.method || (hasData ? Method.post : Method.get)
+
   if (!node.url)
     return { node: null, error: 'Missing URL or url not start with http.' }