紧接上文,
1).net core 阿里云接口之获取临时访问凭证_SunshineGGB的博客-CSDN博客
2).net core 阿里云接口之将指定的OSS文件下载到流_SunshineGGB的博客-CSDN博客
本文继续阿里云接口调用,将指定的OSS文件下载到流。
直接上代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
|
[HttpPost, HttpGet, HttpOptions, CorsOptions] public IActionResult CopyFiles() { string accessKeyId = _configuration["Aliyun:AccessKey:Id"]; string accessKeySecret = _configuration["Aliyun:AccessKey:Secret"]; string endpoint = _configuration["Aliyun:Endpoint"]; string sourceBucket = _configuration["Aliyun:SourceBucketName"]; string sourceObject = "/oss-example/oss.jpg"; string targetBucket = _configuration["Aliyun:TargetBucketName"]; string targetObject = "/oss-example1/oss1.jpg; // 指定拷贝的目标地址,例如:/oss-example1/oss1.jpg if(!string.IsNullOrWhiteSpace(accessKeyId) && !string.IsNullOrWhiteSpace(accessKeySecret) && !string.IsNullOrWhiteSpace(endpoint) && !string.IsNullOrWhiteSpace(sourceBucket) && !string.IsNullOrWhiteSpace(sourceObject) && !string.IsNullOrWhiteSpace(targetBucket) && !string.IsNullOrWhiteSpace(targetObject)) { // 创建OssClient实例。 var client = new OssClient(endpoint, accessKeyId, accessKeySecret); try { var metadata = new ObjectMetadata(); metadata.AddHeader("mk1", "mv1"); metadata.AddHeader("mk2", "mv2"); var req = new CopyObjectRequest(sourceBucket, sourceObject, targetBucket, targetObject) { // 如果NewObjectMetadata为null则为COPY模式(即拷贝源文件的元信息),非null则为REPLACE模式(覆盖源文件的元信息)。 NewObjectMetadata = metadata }; // 拷贝文件。 var info = client.CopyObject(req); return SuccessResult(info); } catch(OssException ex) { LogHelper.WriteErrorLog("拷贝文件出现错误,错误原因为:" + ex.Message); return ErrorResult("拷贝文件出现错误,错误原因为:" + ex.Message, 111150); } catch(Exception ex) { LogHelper.WriteErrorLog("拷贝文件出现错误,错误原因为:" + ex.Message); return ErrorResult("拷贝文件出现错误,错误原因为:" + ex.Message, 111151); } } else return ErrorResult("阿里云配置文件读取失败,请联系网站管理员!", 111101); }
|
以上就是.net core 阿里云接口之拷贝文件的介绍,做此记录,如有帮助,欢迎点赞关注收藏!