Flurl是一个用于处理HTTP请求的C#库,可以方便地实现文件上传。下面是一个示例代码,演示如何使用Flurl实现文件上传:
using Flurl;
using Flurl.Http;
using System;
using System.Threading.Tasks;
class Program
{
static async Task Main(string[] args)
{
try
{
var fileUrl = "http://example.com/upload";
var filePath = "path/to/file.txt";
var response = await fileUrl
.WithOAuthBearerToken("your_access_token")
.PostMultipartAsync(content => content
.AddFile("file", filePath)
);
if (response.IsSuccessStatusCode)
{
Console.WriteLine("File uploaded successfully!");
}
else
{
Console.WriteLine("File upload failed. Status code: " + response.StatusCode);
}
}
catch (FlurlHttpException ex)
{
Console.WriteLine("An error occurred: " + ex.Message);
}
}
}
在这个示例中,我们使用Flurl的PostMultipartAsync
方法发送一个带有文件的multipart/form-data请求。我们首先指定要上传的文件的路径,然后使用AddFile
方法将文件添加到请求中。
在实际项目中,你需要替换fileUrl
和filePath
变量的值,确保fileUrl
指向正确的文件上传接口,filePath
指向要上传的文件路径。另外,如果需要身份验证,可以使用WithOAuthBearerToken
方法添加访问令牌。
当执行这段代码时,它会将指定的文件上传到服务器,并输出相应的结果。如果上传成功,它会显示"File uploaded successfully!“,否则会显示"File upload failed. Status code: [status code]”。如果发生错误,它会捕获并显示异常信息。
希望这个示例可以帮助你实现文件上传功能。如果有任何问题,请随时向我询问。