public static Task <string> UploadBase64Async(string bucket, string filelocation) { var tcs = new TaskCompletionSource(); qiniu.Config.InitFromAppConfig(); string qiniuKey = Guid.NewGuid().ToString(); // I think there is an issue here : jpeg is never used jpegToBase64 jpeg = new jpegToBase64(filelocation); QiniuFile qfile = new QiniuFile(bucket, qiniuKey); qfile.UploadCompleted += (sender, e) => { var returnUrl = e.RawString; Console.Write(returnUrl); tcs.SetResult(returnUrl); }; qfile.UploadFailed += (sender, e) => { QiniuWebException qe = (QiniuWebException)e.Error; Console.WriteLine(qe.Error.ToString()); tcs.SetException(qe); }; qfile.UploadString((int)jpeg.Filesize, "image/png", jpeg.Base64Content); return(tcs.Task); }
/// <summary> /// Uploads the base64. /// </summary> public static void UploadBase64() { string bucket = "icattlecoder"; string qiniuKey = "base64.png"; ManualResetEvent done = new ManualResetEvent(false); jpegToBase64 jpeg = new jpegToBase64("/Users/icattlecoder/Desktop/base64.png"); QiniuFile qfile = new QiniuFile(bucket, qiniuKey); qfile.UploadCompleted += (sender, e) => { Console.Write(e.RawString); done.Set(); }; qfile.UploadFailed += (sender, e) => { QiniuWebException qe = (QiniuWebException)e.Error; Console.WriteLine(qe.Error.ToString()); }; qfile.UploadString((int)jpeg.Filesize, "image/png", jpeg.Base64Content); done.WaitOne(); }
public static void UploadBase642() { string bucket = "icattlecoder"; string qiniuKey = "base642.png"; ManualResetEvent done = new ManualResetEvent(false); Base64File bfile = new Base64File(Base64File.TESTBASE64); QiniuFile qfile = new QiniuFile(bucket, qiniuKey); qfile.UploadCompleted += (sender, e) => { Console.Write(e.RawString); done.Set(); }; qfile.UploadFailed += (sender, e) => { QiniuWebException qe = (QiniuWebException)e.Error; Console.WriteLine(qe.Error.ToString()); }; qfile.UploadString((int)bfile.FileSize, "image/png", Base64File.TESTBASE64); done.WaitOne(); }
private ReturnResult UploadImageToQiniu(String imgPath, HttpPostedFile file, string basePath = "~/UploadFiles/Files/") { // 初始化qiniu配置,主要是API Keys qiniu.Config.ACCESS_KEY = _appConfig.AppConfigGet("ACCESS_KEY"); qiniu.Config.SECRET_KEY = _appConfig.AppConfigGet("SECRET_KEY"); qiniu.Config.UP_HOST = _appConfig.AppConfigGet("UP_HOST"); string bucketName = _appConfig.AppConfigGet("BUCKET_NAME"); ReturnResult rr = null; string fileExt = FileUtil.GetExtension(imgPath); // ,jpg,jpeg,bmp,png if (fileExt.Equals("gif", StringComparison.OrdinalIgnoreCase) || fileExt.Equals("jpeg", StringComparison.OrdinalIgnoreCase) || fileExt.Equals("bmp", StringComparison.OrdinalIgnoreCase) || fileExt.Equals("png", StringComparison.OrdinalIgnoreCase)) { string qiniukey = basePath + FileUtil.GetFileName(imgPath); /* 断点续传 */ QiniuFile qfile = new QiniuFile(bucketName, qiniukey); ManualResetEvent done = new ManualResetEvent(false); qfile.UploadCompleted += (sender, e) => { rr = new ReturnResult() { ErrorCode = 0, ErrorMessage = string.Format("[UploaderFileByBaidu->SaveFile_UploadCompleted] Key:{0} Hash:{1}", e.key, e.Hash), LogLevel = (short)LogLevel.LOG_LEVEL_INFO, Data1 = qiniukey }; done.Set(); }; qfile.UploadFailed += (sender, e) => { rr = new ReturnResult() { ErrorCode = 000012, ErrorPath = string.Format("[UploaderFileByBaidu->UploadFailed] Error:{0}", e.Error.Error), ErrorMessage = dicErrInfo["E000012"].ChineseName, LogLevel = dicErrInfo["E000012"].LogLevel }; done.Set(); }; // 进度条变更 qfile.UploadProgressChanged += (sender, e) => { int percentage = (int)(100 * e.BytesSent / e.TotalBytes); rr = new ReturnResult() { ErrorCode = 0, ErrorMessage = string.Format("[UploaderFileByBaidu->SaveFile_UploadProgressChanged] Percentage:{0}", percentage), LogLevel = (short)LogLevel.LOG_LEVEL_INFO, Data1 = qiniukey }; }; byte[] bytes = new byte[(int)file.ContentLength]; file.InputStream.Read(bytes, 0, bytes.Length); // 设置当前流的位置为流的开始 file.InputStream.Seek(0, SeekOrigin.Begin); //上传为异步操作 //上传本地文件到七牛云存储 qfile.UploadString(file.ContentLength, file.ContentType, Convert.ToBase64String(bytes)); done.WaitOne(); } else { rr = new ReturnResult(); rr.ErrorCode = 000013; rr.ErrorMessage = dicErrInfo["E000013"].ChineseName; rr.ErrorPath = "FileUploadHelper->UploadChunkImageToQiniu"; rr.LogLevel = dicErrInfo["E000013"].LogLevel; return(rr); } return(rr); }
public static void Main(string[] args) { // 初始化qiniu配置,主要是API Keys qiniu.Config.ACCESS_KEY = "SL0UAJ5ilp1B2Fs2aOvxQ5tUiEG-NWOL4Xj76SLO"; qiniu.Config.SECRET_KEY = "JUl2SDc0SzCcUinGek7xrCf8MZexlvxDuT0e68zy"; /********************************************************************** * 可以用下面的方法从配置文件中初始化 * qiniu.Config.InitFromAppConfig (); **********************************************************************/ string localfile = @"C:\Users\Jimmy\Desktop\桌面文档\免责声明.txt"; string bucket = "jcodes"; string qiniukey = Guid.NewGuid().ToString(); //{ // Base64File bfile = new Base64File (Base64File.TESTBASE64); // bfile.Save ("/Users/icattlecoder/Desktop/dbase64.jpg"); //} //{ // UploadBase642 (); //} //{ // UploadBase64 (); //} //====================================================================== { QiniuFile qfile = new QiniuFile(bucket, qiniukey, localfile); // 续传文件 // ResumbleUploadEx puttedCtx = new ResumbleUploadEx (localfile); ManualResetEvent done = new ManualResetEvent(false); qfile.UploadCompleted += (sender, e) => { Console.WriteLine(e.key); Console.WriteLine(e.Hash); done.Set(); }; qfile.UploadFailed += (sender, e) => { Console.WriteLine(e.Error.Error.ToString()); // puttedCtx.Save(); done.Set(); }; qfile.UploadProgressChanged += (sender, e) => { int percentage = (int)(100 * e.BytesSent / e.TotalBytes); Console.Write(percentage); }; qfile.UploadBlockCompleted += (sender, e) => { // puttedCtx.Add(e.Index,e.Ctx); // puttedCtx.Save(); }; qfile.UploadBlockFailed += (sender, e) => { // }; //上传为异步操作 //上传本地文件到七牛云存储 // qfile.Upload (puttedCtx.PuttedCtx); qfile.Upload(); done.WaitOne(); } //====================================================================== { /* * * try { * QiniuFile qfile = new QiniuFile (bucket, qiniukey); * QiniuFileInfo finfo = qfile.Stat (); * if (finfo != null) { * qfile.Move("cloudcomment","movetest"); * //删除七牛云空间的文件 * //qfile.Delete (); * } * } catch (QiniuWebException e) { * Console.WriteLine (e.Error.HttpCode); * Console.WriteLine (e.Error.ToString ()); * } */ } }
public static void Main(string[] args) { // 初始化qiniu配置,主要是API Keys qiniu.Config.ACCESS_KEY = "IT9iP3J9wdXXYsT1p8ns0gWD-CQOdLvIQuyE0FOk"; qiniu.Config.SECRET_KEY = "zUCzekBtEqTZ4-WJPCGlBrr2PeyYxsYn98LPaivM"; /********************************************************************** * 可以用下面的方法从配置文件中初始化 * qiniu.Config.InitFromAppConfig (); **********************************************************************/ string localfile = "/Users/icattlecoder/Movies/tzd.rmvb"; string bucket = "icattlecoder"; string qiniukey = "tzd.rmvb"; { Base64File bfile = new Base64File(Base64File.TESTBASE64); bfile.Save("/Users/icattlecoder/Desktop/dbase64.jpg"); } { UploadBase642(); } { UploadBase64(); } //====================================================================== { QiniuFile qfile = new QiniuFile(bucket, qiniukey, localfile); // ResumbleUploadEx puttedCtx = new ResumbleUploadEx (localfile); ManualResetEvent done = new ManualResetEvent(false); qfile.UploadCompleted += (sender, e) => { Console.WriteLine(e.key); Console.WriteLine(e.Hash); done.Set(); }; qfile.UploadFailed += (sender, e) => { Console.WriteLine(e.Error.ToString()); // puttedCtx.Save(); done.Set(); }; qfile.UploadProgressChanged += (sender, e) => { int percentage = (int)(100 * e.BytesSent / e.TotalBytes); Console.Write(percentage); }; qfile.UploadBlockCompleted += (sender, e) => { // puttedCtx.Add(e.Index,e.Ctx); // puttedCtx.Save(); }; qfile.UploadBlockFailed += (sender, e) => { // }; //上传为异步操作 //上传本地文件到七牛云存储 // qfile.Upload (puttedCtx.PuttedCtx); qfile.Upload(); done.WaitOne(); } //====================================================================== { /* * * try { * QiniuFile qfile = new QiniuFile (bucket, qiniukey); * QiniuFileInfo finfo = qfile.Stat (); * if (finfo != null) { * qfile.Move("cloudcomment","movetest"); * //删除七牛云空间的文件 * //qfile.Delete (); * } * } catch (QiniuWebException e) { * Console.WriteLine (e.Error.HttpCode); * Console.WriteLine (e.Error.ToString ()); * } */ } }