You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用脚本或工具批量调用REST API验证多输入文件返回结果

批量调用文件上传API做校验的实现方案

完全可以实现,以下是三种常用的落地方式:


方案1:Python脚本(最灵活,推荐复杂校验场景)

适合需要自定义校验规则、导出详细校验报告的场景,核心逻辑是遍历目标文件夹下的所有文件,逐个发起请求后做结果校验。
示例代码如下:

import os
import requests

# 配置项,替换为你自己的实际参数
API_URL = "你的API接口地址"
INPUT_FOLDER = "存放待校验文件的文件夹绝对路径"
EXPECTED_SUCCESS_CODE = 200 # 替换为接口正常返回的HTTP状态码
FILE_PARAM_NAME = "file" # 替换为API接收文件的入参参数名

for filename in os.listdir(INPUT_FOLDER):
    file_path = os.path.join(INPUT_FOLDER, filename)
    # 跳过文件夹,只处理文件
    if not os.path.isfile(file_path):
        continue
    # 构造文件上传请求
    with open(file_path, 'rb') as f:
        files = {FILE_PARAM_NAME: (filename, f)}
        response = requests.post(API_URL, files=files)
    # 自定义校验逻辑,可扩展为响应内容和预期值的比对、JSON字段校验等
    if response.status_code != EXPECTED_SUCCESS_CODE:
        print(f"[校验失败] 文件名:{filename},状态码:{response.status_code},响应内容:{response.text}")
    else:
        print(f"[校验通过] 文件名:{filename}")

方案2:Postman批量执行(无代码基础也可快速上手)

适合简单校验场景,全程可视化操作,自带结果统计:

  • 先在Postman新建文件上传请求,填好API地址、请求方法,在Body的form-data栏将文件参数的类型改为File,参数值填动态变量{{$filePath}}
  • 将该请求保存到任意集合(Collection)中
  • 准备CSV参数文件,列标题设为filePath,每一行填一个待校验文件的绝对路径
  • 打开集合的「Runner」功能,导入刚才的CSV参数文件,勾选「Persist Variables」,选择对应请求后点击运行即可自动批量执行
  • 可以提前在请求的「Tests」标签页写好校验规则,运行后会直接展示每个请求的校验结果

方案3:Shell脚本+curl(轻量无额外依赖)

适合Linux/macOS环境下不需要安装额外工具的场景,直接通过系统自带的curl完成批量调用:

#!/bin/bash
# 配置项,替换为你自己的实际参数
API_URL="你的API接口地址"
INPUT_FOLDER="存放待校验文件的文件夹绝对路径"
FILE_PARAM_NAME="file" # 替换为API接收文件的入参参数名

for file in "$INPUT_FOLDER"/*
do
  if [ -f "$file" ]; then
    echo "正在处理文件:$file"
    # 发起请求,同时获取状态码和响应内容
    resp=$(curl -s -w "%{http_code}" -X POST -F "$FILE_PARAM_NAME=@$file" "$API_URL")
    status_code=${resp: -3}
    resp_body=${resp:0:-3}
    if [ "$status_code" -ne 200 ]; then
      echo "[校验失败] 文件名:$file,状态码:$status_code,响应内容:$resp_body"
    else
      echo "[校验通过] 文件名:$file"
    fi
  fi
done

内容的提问来源于stack exchange,提问作者Ashok Bottu

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 23:39:01