1、官网文档有例子、讲的不是很清楚特意记录一下、分片上传(包含断点续传功能,建议直接使用分片上传)
var endpoint = "aliyun_endpoint"; var accessKeyId = "aliyun_accessKey"; var accessKeySecret = "aliyun_scret"; var bucketName = "aliyun_bucket"; var objectName = "阿里云文件夹名/本地文件夹名";//设置成阿里云配置文件夹名字 var localFilename = @"local_file_path"; // 创建OssClient实例。 var client = new OssClient(endpoint, accessKeyId, accessKeySecret);
2、断点续传、官网讲的不是很清晰CheckpointDir怎么给,看了下源码,记录一下
var endpoint = "aliyun_endpoint"; var accessKeyId = "aliyun_accessKey"; var accessKeySecret = "aliyun_secret"; var bucketName = "aliyun_bucket"; var objectName = "阿里云下配置文件夹/***.ext";//保存在配置文件夹下-->名字为上传的文件夹名字(不然上传失败后不能续传上次上传失败的文件) var localFilename = @"local_file_path"; string checkpointDir = @"local_uplod_file_path";//checkpoint";//完全上传成功会清除 ----->填写上传的文件地址(无需文件名) // 创建OssClient实例。 var client = new OssClient(endpoint, accessKeyId, accessKeySecret); try { // 通过UploadFileRequest设置多个参数。 UploadObjectRequest request = new UploadObjectRequest(bucketName, objectName, localFilename) { // 指定上传的分片大小。 PartSize = 8 * 1024 * 1024, // 指定并发线程数。 ParallelThreadCount = 3, // checkpointDir保存断点续传的中间状态,用于失败后继续上传。如果checkpointDir为null,断点续传功能不会生效,每次失败后都会重新上传。 CheckpointDir = checkpointDir, }; // 断点续传上传。 client.ResumableUploadObject(request); Console.WriteLine("Resumable upload object:{0} succeeded", objectName); } catch (OssException ex) { Console.WriteLine("Failed with error code: {0}; Error info: {1}. \nRequestID:{2}\tHostID:{3}", ex.ErrorCode, ex.Message, ex.RequestId, ex.HostId); }
3、总结。只注意前面checkpointDir以上,其他官网有源码, 真特么该早点看源码,不至于浪费这么长时间,唉! 归根结底还是菜导致的。