🎨 Supports file upload

This commit is contained in:
landaiqing committed 2025-11-02 01:53:11 +08:00
1 parent 4fa6bb42e3
commit 4380ad010c
2 files changed
+11 -2

No files matched your search

@@ -206,7 +206,7 @@ export class HttpRequestParser {
} }
/** /**
* 解析 JsonBlock(用于 @json, @formdata, @urlencoded) * 解析 JsonBlock(用于 @json, @form, @urlencoded)
*/ */
private parseJsonBlock(node: SyntaxNode): any { private parseJsonBlock(node: SyntaxNode): any {
const result: any = {}; const result: any = {};
+10 -1
View File
@@ -92,7 +92,16 @@ func (hcs *HttpClientService) setRequestBody(req *resty.Request, request *HttpRe
case "formdata": case "formdata":
if formData, ok := request.Body.(map[string]interface{}); ok { if formData, ok := request.Body.(map[string]interface{}); ok {
for key, value := range formData { for key, value := range formData {
req.SetFormData(map[string]string{key: fmt.Sprintf("%v", value)}) valueStr := fmt.Sprintf("%v", value)
// 检查是否是文件类型,使用 @file 关键词
if strings.HasPrefix(valueStr, "@file ") {
// 提取文件路径(去掉 @file 前缀)
filePath := strings.TrimSpace(strings.TrimPrefix(valueStr, "@file "))
req.SetFile(key, filePath)
} else {
// 普通表单字段
req.SetFormData(map[string]string{key: valueStr})
}
} }
} }
case "urlencoded": case "urlencoded":