/// <summary> /// 获取空间文件信息 /// </summary> /// <param name="bucket">空间名称</param> /// <param name="key">文件key</param> /// <returns>文件信息获取结果</returns> public StatResult Stat(string bucket, string key) { StatResult result = new StatResult(); try { string statUrl = string.Format("{0}{1}", this.config.RsHost(this.mac.AccessKey, bucket), StatOp(bucket, key)); string token = auth.CreateManageToken(statUrl); HttpResult hr = httpManager.Get(statUrl, token); result.Shadow(hr); } catch (QiniuException ex) { StringBuilder sb = new StringBuilder(); sb.AppendFormat("[{0}] [stat] Error: ", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.ffff")); Exception e = ex; while (e != null) { sb.Append(e.Message + " "); e = e.InnerException; } sb.AppendLine(); result.Code = ex.HttpResult.Code; result.RefCode = ex.HttpResult.Code; result.Text = ex.HttpResult.Text; result.RefText += sb.ToString(); } return(result); }
/// <summary> /// 获取空间文件信息 /// </summary> /// <param name="bucket">空间名称</param> /// <param name="key">文件key</param> /// <returns>文件信息获取结果</returns> public async Task <StatResult> Stat(string bucket, string key) { var result = new StatResult(); try { var host = await _config.RsHost(_mac.AccessKey, bucket); var statUrl = $"{host}{StatOp(bucket, key)}"; var token = _auth.CreateManageToken(statUrl); var hr = await _httpManager.GetAsync(statUrl, token); result.Shadow(hr); } catch (QiniuException ex) { var sb = new StringBuilder(); sb.Append($"[{DateTime.Now:yyyy-MM-dd HH:mm:ss.ffff}] [stat] Error: "); Exception e = ex; while (e != null) { sb.Append(e.Message + " "); e = e.InnerException; } sb.AppendLine(); result.Code = ex.HttpResult.Code; result.RefCode = ex.HttpResult.Code; result.Text = ex.HttpResult.Text; result.RefText += sb.ToString(); } return(result); }