zoukankan      html  css  js  c++  java
  • OSS上传文件(一)

    引用AliyunOSS.dll

    封装一个AliyunOSS帮助类

    public static class AliyunOSS {
    static string accessKeyId = Config.AccessKeyId;
    static string accessKeySecret = Config.AccessKeySecret;
    static string endpoint = Config.Endpoint;
    static OssClient client = new OssClient(endpoint, accessKeyId, accessKeySecret);
    static string fileToUpload = Config.FileToUpload;
    static double Expiration = Config.Expiration;
    public static void PutObjectFromFile(string bucketName, string key, string ContentType = "image/jpeg") {
    
    try {
    using (var content = File.Open(fileToUpload, FileMode.Open)) {
    var metadata = new ObjectMetadata();
    metadata.ContentLength = content.Length;
    metadata.ContentType = ContentType;
    client.PutObject(bucketName, key, content, metadata);
    }
    
    // Console.WriteLine("Put object:{0} succeeded", key);
    }
    catch (OssException ex) {
    // Console.WriteLine("Failed with error code: {0}; Error info: {1}. 
    RequestID:{2}	HostID:{3}",
    // ex.ErrorCode, ex.Message, ex.RequestId, ex.HostId);
    }
    catch (Exception ex) {
    // Console.WriteLine("Failed with error info: {0}", ex.Message);
    }
    }
    
    public static void PutObject(string bucketName, string key, Stream content, ObjectMetadata metadata) {
    try {
    client.PutObject(bucketName, key, content, metadata);
    }
    catch (OssException ex) {
    
    }
    catch (Exception ex) {
    
    }
    }
    public static void DeleteObject(string bucketName, string key)
    {
    try
    {
    client.DeleteObject(bucketName, key);
    }
    catch (OssException ex)
    {
    
    }
    catch (Exception ex)
    {
    
    }
    }
    
    public static void PutObject(string bucketName, string key, Stream content)
    {
    try
    {
    client.PutObject(bucketName, key, content);
    }
    catch (OssException ex)
    {
    
    }
    catch (Exception ex)
    {
    
    }
    }
    
    public static string PutLocalFileBySignedUrl(string bucketName, string key) {
    OssClient client = new OssClient(endpoint, accessKeyId, accessKeySecret);
    try {
    var request = new GeneratePresignedUriRequest(bucketName, key, SignHttpMethod.Get);
    request.Expiration = DateTime.Now.AddMinutes(Expiration);
    return client.GeneratePresignedUri(request).AbsoluteUri;
    
    }
    catch (OssException ex) {
    // Console.WriteLine("Failed with error code: {0}; Error info: {1}. 
    RequestID:{2}	HostID:{3}",
    // ex.ErrorCode, ex.Message, ex.RequestId, ex.HostId);
    return null;
    }
    catch (Exception ex) {
    // Console.WriteLine("Failed with error info: {0}", ex.Message);
    return null;
    }
    }
    public static bool DoesObjectExist(string bucketName, string key)
    {
    OssClient client = new OssClient(endpoint, accessKeyId, accessKeySecret);
    int i = 0;
    GoConn:
    try
    {
    return client.DoesObjectExist(bucketName, key);
    }
    catch (OssException ex)
    {
    if (i < 3)
    {
    ++i;
    goto GoConn;
    }
    throw;
    }
    }
    }
  • 相关阅读:
    python中如何将两个list合并成一个list,不用for语句
    python print的用法
    Pandas Timestamp 和 python 中 datetime 的互相转换
    python eval, exec. compile
    python 用 __all__ 暴露接口
    python functiontools 模块
    Python 修饰符, 装饰符
    Python 字典(Dictionary) update()方法
    Python :random 随机数生成
    Pandas dataframe 标记删除重复记录
  • 原文地址:https://www.cnblogs.com/yyjspace/p/11613525.html
Copyright © 2011-2022 走看看