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

如何在Mirth Connect中上传multipart格式的.CSV文件

Mirth Connect multipart/form-data 格式上传CSV文件解决方案

前置配置调整

  • 打开对应通道的HTTP Sender连接器设置,在基本设置标签页将Method设为接口要求的请求方法(通常为POST/PUT)
  • Content Type直接填写multipart/form-data,不要手动加boundary参数,Mirth会自动生成合法边界标识
  • 若你使用的是3.8及以上版本,可在「高级设置」中勾选Use multipart form data开关,跳过手动拼接请求体的步骤

构造multipart请求体(通用方案,适配所有Mirth版本)

不需要提前将CSV转为base64格式,直接在HTTP Sender的Transformer中添加如下JavaScript脚本即可:

// 若CSV内容已存储在消息中,直接取值即可,例如 var csvContent = msg.toString();
// 若需要读取本地CSV文件,使用以下代码
var csvContent = FileUtil.read('/你的文件存储路径/目标文件.csv');

// 构造表单参数数组,有多个参数时调整数组长度即可
var parts = new Packages.org.apache.commons.httpclient.methods.multipart.Part[1];
// 第一个参数为API要求的CSV对应的表单字段名,最后两个参数指定内容格式和编码
parts[0] = new Packages.org.apache.commons.httpclient.methods.multipart.StringPart(
    '接口要求的CSV参数名',
    csvContent,
    'text/csv',
    'UTF-8'
);

// 将构造好的表单参数绑定到请求实体
var httpMethod = connectorMessage.getResponseMap().get('httpSenderMethod');
httpMethod.setRequestEntity(new Packages.org.apache.commons.httpclient.methods.multipart.MultipartRequestEntity(parts, httpMethod.getParams()));

问题排查步骤

  • 发送请求后在Mirth消息控制台查看原始请求内容,确认请求头的Content-Type已自动携带boundary参数,CSV内容在表单边界内正常展示
  • 若返回400错误,核对API要求的表单字段名、文件名是否和配置一致
  • 若返回415错误,检查是否在自定义请求头中额外添加了Content-Type,覆盖了Mirth自动生成的合法配置

内容的提问来源于stack exchange,提问作者Harshal Deshmukh

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.07 15:21:01