dify工作流api上传多份文件
时间: 2025-07-12 15:34:39 浏览: 27
在Dify中使用工作流API上传多个文件,通常涉及构造一个包含多个文件作为输入的POST请求。以下是一个基本的示例,展示了如何通过Python使用`requests`库来实现这一功能。
### 上传多个文件到Dify工作流API
假设你需要上传两个文件`file1.txt`和`file2.txt`到Dify的工作流API端点`https://api.dify.ai/v1/workflows/run`。这里假定你已经有了必要的认证信息,比如API密钥,它将被用作Bearer Token。
```python
import requests
url = "https://api.dify.ai/v1/workflows/run"
headers = {
"Authorization": "Bearer YOUR_API_KEY",
}
# 准备要上传的文件列表
files = [
('file', open('path/to/file1.txt', 'rb')),
('file', open('path/to/file2.txt', 'rb'))
]
try:
response = requests.post(url, headers=headers, files=files)
print("Status Code:", response.status_code)
print("Response Body:", response.json())
finally:
# 确保关闭所有打开的文件
for _, file_tuple in enumerate(files):
file_tuple[1].close()
```
在这个例子中,我们做了以下几件事情:
- 设置了目标URL为Dify的工作流运行端点。
- 添加了带有你的API密钥的授权头,这里的`YOUR_API_KEY`需要替换为你自己的有效API密钥。
- 创建了一个文件元组列表,每个元组的第一个元素是表单字段名称(在这个情况下都是`file`),第二个元素是打开的文件对象。
- 使用`requests.post`方法发送POST请求,并传递了headers和files参数。
- 打印出响应的状态码和JSON格式的内容以便查看结果。
- 最后确保所有的文件都被正确地关闭[^1]。
请注意,在实际应用中,你应该处理可能出现的各种异常情况,例如网络错误或无效的响应内容。此外,你也应该考虑使用环境变量或者其他安全的方式来存储敏感信息如API密钥,而不是直接硬编码在脚本里。
如果你有特定的需求或者遇到了问题,请提供更多的细节以便能够给出更准确的帮助。
阅读全文
相关推荐


















