mirror of
https://git.mirrors.martin98.com/https://github.com/langgenius/dify.git
synced 2025-06-04 11:14:10 +08:00
parent
55405c1a26
commit
be18b103b7
@ -22,13 +22,14 @@ const parseCurl = (curlCommand: string): { node: HttpNodeType | null; error: str
|
|||||||
const node: Partial<HttpNodeType> = {
|
const node: Partial<HttpNodeType> = {
|
||||||
title: 'HTTP Request',
|
title: 'HTTP Request',
|
||||||
desc: 'Imported from cURL',
|
desc: 'Imported from cURL',
|
||||||
method: Method.get,
|
method: undefined,
|
||||||
url: '',
|
url: '',
|
||||||
headers: '',
|
headers: '',
|
||||||
params: '',
|
params: '',
|
||||||
body: { type: BodyType.none, data: '' },
|
body: { type: BodyType.none, data: '' },
|
||||||
}
|
}
|
||||||
const args = curlCommand.match(/(?:[^\s"']+|"[^"]*"|'[^']*')+/g) || []
|
const args = curlCommand.match(/(?:[^\s"']+|"[^"]*"|'[^']*')+/g) || []
|
||||||
|
let hasData = false
|
||||||
|
|
||||||
for (let i = 1; i < args.length; i++) {
|
for (let i = 1; i < args.length; i++) {
|
||||||
const arg = args[i].replace(/^['"]|['"]$/g, '')
|
const arg = args[i].replace(/^['"]|['"]$/g, '')
|
||||||
@ -38,6 +39,7 @@ const parseCurl = (curlCommand: string): { node: HttpNodeType | null; error: str
|
|||||||
if (i + 1 >= args.length)
|
if (i + 1 >= args.length)
|
||||||
return { node: null, error: 'Missing HTTP method after -X or --request.' }
|
return { node: null, error: 'Missing HTTP method after -X or --request.' }
|
||||||
node.method = (args[++i].replace(/^['"]|['"]$/g, '') as Method) || Method.get
|
node.method = (args[++i].replace(/^['"]|['"]$/g, '') as Method) || Method.get
|
||||||
|
hasData = true
|
||||||
break
|
break
|
||||||
case '-H':
|
case '-H':
|
||||||
case '--header':
|
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)
|
if (!node.url)
|
||||||
return { node: null, error: 'Missing URL or url not start with http.' }
|
return { node: null, error: 'Missing URL or url not start with http.' }
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user