C#实现文件的上传

cs 复制代码
using System;
using System.IO;
using System.Net.Http;
using System.Threading.Tasks;
 
class Program
{
    static async Task Main(string[] args)
    {
        string apiUrl = "http://example.com/upload"; // 替换为你的上传API地址
        string filePath = @"C:\path\to\your\file.txt"; // 替换为你要上传的文件路径
 
        using (var client = new HttpClient())
        using (var form = new MultipartFormDataContent())
        {
            using (var fs = File.OpenRead(filePath))
            using (var stream = new StreamContent(fs))
            {
                var fileName = Path.GetFileName(filePath);
                stream.Headers.ContentDisposition = new System.Net.Http.Headers.ContentDispositionHeaderValue("form-data")
                {
                    Name = "file", // 这里的name需要和API端的参数名称一致
                    FileName = fileName
                };
                
                form.Add(stream, "file", fileName); // 这里的"file"需要和API端的参数名称一致
                
                var response = await client.PostAsync(apiUrl, form);
                string responseString = await response.Content.ReadAsStringAsync();
                
                Console.WriteLine(responseString);
            }
        }
    }
}

确保你的API端点能够处理multipart/form-data类型的请求,并且你有权限上传文件到指定的位置。这个例子中的apiUrl应该是你的文件上传API的URL,filePath是你要上传的文件的本地路径。

相关推荐
零雲5 分钟前
java面试:@Resource和@Autowired的区别
java·开发语言·面试
liu****6 分钟前
01_NumPy讲义
开发语言·python·numpy·python高级语法
一路往蓝-Anbo14 分钟前
C语言从句柄到对象 (一) —— 全局变量的噩梦与“多实例”的救赎
c语言·开发语言·stm32·单片机·嵌入式硬件·物联网
低频电磁之道20 分钟前
C++中类的this指针
开发语言·c++
世转神风-40 分钟前
qt-通信协议基础-double转成QbyteArray-小端系统
开发语言·qt
玩泥巴的1 小时前
如何设计易维护、低学习成本的飞书.NET SDK组件
c#·二次开发·飞书·roslyn
web3.08889991 小时前
小红书笔记评论API接口详情展示
开发语言·笔记·python
手抄二进制1 小时前
使用Anaconda创建python环境并链接到Jupyter
开发语言·python·jupyter
古城小栈1 小时前
go-zero 从入门到实战 全指南(包的)
开发语言·后端·golang
lsx2024061 小时前
Python 3 函数
开发语言