string GetObjectUrl(string bucket, string key);
try{PreSignatureStruct preSignatureStruct = new PreSignatureStruct();preSignatureStruct.appid = "1250000000";//Tencent Cloud 계정의 APPIDpreSignatureStruct.region = "COS_REGION"; //버킷 리전preSignatureStruct.bucket = "examplebucket-1250000000"; //버킷preSignatureStruct.key = "exampleobject"; //객체 키preSignatureStruct.httpMethod = "PUT"; //HTTP 요청 메소드preSignatureStruct.isHttps = true; //HTTPS 요청 URL 생성preSignatureStruct.signDurationSecond = 600; //서명 요청 지속 시간: 600초preSignatureStruct.headers = null;//서명에서 검증할 headerpreSignatureStruct.queryParameters = null; //서명에서 검증할 URL 요청 매개변수//업로드를 위해 미리 서명된 URL(영구 키로 계산됨)string requestSignURL = cosXml.GenerateSignURL(preSignatureStruct);string srcPath = @"temp-source-file";//로컬 파일 절대 경로PutObjectRequest request = new PutObjectRequest(null, null, srcPath);//업로드 요청을 위해 미리 서명된 URL 설정request.RequestURLWithSign = requestSignURL;//진행률 콜백 설정request.SetCosProgressCallback(delegate (long completed, long total){Console.WriteLine(String.Format("progress = {0:##.##}%", completed * 100.0 / total));});//실행 요청PutObjectResult result = cosXml.PutObject(request);//요청 완료Console.WriteLine(result.GetResultInfo());}catch (COSXML.CosException.CosClientException clientEx){//요청 실패Console.WriteLine("CosClientException: " + clientEx);}catch (COSXML.CosException.CosServerException serverEx){//요청 실패Console.WriteLine("CosServerException: " + serverEx.GetInfo());}
try{PreSignatureStruct preSignatureStruct = new PreSignatureStruct();preSignatureStruct.appid = "1250000000";//Tencent Cloud 계정의 APPIDpreSignatureStruct.region = "COS_REGION"; //버킷 리전preSignatureStruct.bucket = "examplebucket-1250000000"; //버킷preSignatureStruct.key = "exampleobject"; //객체 키preSignatureStruct.httpMethod = "GET"; //HTTP 요청 메소드preSignatureStruct.isHttps = true; //HTTPS 요청 URL 생성preSignatureStruct.signDurationSecond = 600; //서명 요청 지속 시간: 600초preSignatureStruct.headers = null;//서명에서 검증할 headerpreSignatureStruct.queryParameters = null; //서명에서 검증할 URL 요청 매개변수string requestSignURL = cosXml.GenerateSignURL(preSignatureStruct);//다운로드 요청을 위해 미리 서명된 URL(영구 키로 계산됨)string localDir = System.IO.Path.GetTempPath();//로컬 폴더string localFileName = "my-local-temp-file"; //로컬 저장 파일 이름 지정GetObjectRequest request = new GetObjectRequest(null, null, localDir, localFileName);//다운로드 요청을 위해 미리 서명된 URL 설정request.RequestURLWithSign = requestSignURL;//진행률 콜백 설정request.SetCosProgressCallback(delegate (long completed, long total){Console.WriteLine(String.Format("progress = {0:##.##}%", completed * 100.0 / total));});//실행 요청GetObjectResult result = cosXml.GetObject(request);//요청 완료Console.WriteLine(result.GetResultInfo());}catch (COSXML.CosException.CosClientException clientEx){//요청 실패Console.WriteLine("CosClientException: " + clientEx);}catch (COSXML.CosException.CosServerException serverEx){//요청 실패Console.WriteLine("CosServerException: " + serverEx.GetInfo());}
피드백