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

RestSharp上传CSV文件时请求头顺序及Content-Type控制问题

RestSharp POST CSV文件时调整多部分表单头顺序

方法1:手动构建多部分请求内容

直接绕过RestSharp的默认表单处理逻辑,自己拼接请求体,完全控制头的顺序:

var client = new RestClient("你的目标API地址");
var request = new RestRequest("", Method.Post);

// 设定主请求的Content-Type,自定义边界值
var boundary = "my-custom-boundary-123";
request.AddHeader("Content-Type", $"multipart/form-data; boundary={boundary}");

// 拼接多部分请求内容
var contentBuilder = new StringBuilder();
contentBuilder.AppendLine($"--{boundary}");
// 优先添加服务器要求的Content-Disposition
contentBuilder.AppendLine($"Content-Disposition: form-data; name=\"File\"; filename=\"test.csv\"");
// 不需要Content-Type就删掉下面这行
contentBuilder.AppendLine($"Content-Type: text/csv");
contentBuilder.AppendLine();
// 写入CSV内容
contentBuilder.AppendLine("\"My\",\"CSV\",\"ETC\"");
// 添加上结束边界
contentBuilder.AppendLine($"--{boundary}--");

// 将拼接好的内容作为请求体发送
request.AddParameter("multipart/form-data", contentBuilder.ToString(), ParameterType.RequestBody);

var response = client.Execute(request);

方法2:用自定义MultipartFormDataContent控制顺序

借助.NET自带的MultipartFormDataContent构建内容,手动指定头的添加顺序:

var client = new RestClient("你的目标API地址");
var request = new RestRequest("", Method.Post);

// 读取本地CSV文件的字节内容
var fileBytes = File.ReadAllBytes("你的文件路径.csv");
var multipartContent = new MultipartFormDataContent("my-custom-boundary-456");

var fileContent = new ByteArrayContent(fileBytes);
// 先设置Content-Disposition头
fileContent.Headers.ContentDisposition = new ContentDispositionHeaderValue("form-data")
{
    Name = "\"File\"",
    FileName = "\"test.csv\""
};
// 再设置Content-Type头(不需要则删除该行)
fileContent.Headers.ContentType = MediaTypeHeaderValue.Parse("text/csv");

multipartContent.Add(fileContent);

// 将自定义的多部分内容赋值给请求
request.AddParameter("multipart/form-data", multipartContent, ParameterType.RequestBody);

var response = client.Execute(request);

方法3:降级到旧版RestSharp

如果确认旧版本(比如v106.x系列)没有这个头顺序问题,直接降级RestSharp的NuGet包,就能恢复默认的Content-Disposition在前的顺序,无需修改代码。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.12 19:40:27