c# httpclient发送form-data
时间: 2023-08-10 22:02:32 浏览: 193
你可以使用 C# 的 HttpClient 类来发送 form-data。以下是一个示例代码:
```csharp
using System;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Threading.Tasks;
class Program
{
static async Task Main(string[] args)
{
using (var client = new HttpClient())
{
var form = new MultipartFormDataContent();
// 添加普通键值对参数
form.Add(new StringContent("value1"), "key1");
form.Add(new StringContent("value2"), "key2");
// 添加文件参数
var fileContent = new ByteArrayContent(System.IO.File.ReadAllBytes("path/to/file"));
fileContent.Headers.ContentType = new MediaTypeHeaderValue("application/octet-stream");
fileContent.Headers.ContentDisposition = new ContentDispositionHeaderValue("form-data")
{
Name = "file",
FileName = "filename.ext"
};
form.Add(fileContent);
var response = await client.PostAsync("http://example.com/upload", form);
if (response.IsSuccessStatusCode)
{
Console.WriteLine("上传成功!");
}
else
{
Console.WriteLine("上传失败!");
}
}
}
}
```
你可以根据实际情况修改参数和 URL。这个示例展示了如何发送包含普通键值对参数和文件参数的 form-data 请求,并接收服务器的响应。
阅读全文