/// <summary> /// WapperServiceResponse /// </summary> /// <param name="request"></param> /// <param name="response"></param> protected virtual void WapperServiceResponse(HttpRequestMessage request, HttpResponseMessage response) { if (!response.IsSuccessStatusCode) { return; } object data; //无返回值 if (!response.TryGetContentValue(out data) || data == null) { response.StatusCode = HttpStatusCode.OK; response.Content = new ObjectContent <ServerResponse>( ResponseProvider.Success(), new JsonMediaTypeFormatter()); return; } //错误情况 if (data is ServerResponse) { return; } //构建返回值 response.Content = new ObjectContent <ServerResponse>( ResponseProvider.Success(data), new JsonMediaTypeFormatter() ); }
public BaseResponse(object model, ISerializer serializer, NancyContext context, string mediaType) { if (serializer == null) { throw new InvalidOperationException("Serializer not set"); } var responseModel = ResponseProvider.Success(model); this.ContentType = mediaType; this.Contents = this.BuildContent(serializer, responseModel); }
/// <summary> /// 上传本地文件(本地路径) /// </summary> /// <param name="key">用于获取阿里云的中图片的唯一值</param> /// <param name="fileToUpload">本地路径</param> public static ServerResponse <FileData> UpLoad(string key, string fileToUpload) { // var fileExtensionName = Path.GetExtension(fileToUpload); //文件扩展名 //var upLoadPath = "/Upload/" + DateTime.Now.ToString("yyyy") + "/" + DateTime.Now.ToString("MM") + "/"; var filePath = $"{key}"; //云文件保存路径 try { Client.PutObject(Config.BucketName, filePath, fileToUpload); var fielData = new FileData { Url = Config.BucketName + "." + Config.Endpoint + "/" + filePath }; return(ResponseProvider.Success(fielData, "成功")); } catch (Exception ex) { return(ResponseProvider.Error <FileData>(ex.Message)); } }
/// <summary> /// 删除 /// </summary> public static ServerResponse Remove(string key) { try { var listResult = Client.ListObjects(Config.BucketName); var ossObjectSummaries = listResult.ObjectSummaries.FirstOrDefault(x => x.Key == key); if (ossObjectSummaries != null) { Client.DeleteObject(Config.BucketName, ossObjectSummaries.Key); } return(ResponseProvider.Success("成功")); } catch (OssException ex) { return(ResponseProvider.Error("失败" + ex.Message)); } catch (Exception ex) { return(ResponseProvider.Error("失败" + ex.Message)); } }
/// <summary> /// 从指定的OSS存储空间中获取指定的文件 /// </summary> /// <param name="key">要获取的文件的名称</param> /// <param name="fileToDownload">文件保存的本地路径</param> public static ServerResponse Down(string key, string fileToDownload) { try { var info = Client.GetObject(Config.BucketName, key); using (var requestStream = info.Content) { var buf = new byte[1024]; var fs = File.Open(fileToDownload, FileMode.OpenOrCreate); var len = 0; while ((len = requestStream.Read(buf, 0, 1024)) != 0) { fs.Write(buf, 0, len); } fs.Close(); } return(ResponseProvider.Success("成功")); } catch (Exception ex) { return(ResponseProvider.Success("失败:" + ex.Message)); } }
/// <summary> /// AsSuccess /// </summary> /// <typeparam name="T"></typeparam> /// <param name="data"></param> /// <returns></returns> public virtual IActionResult AsSuccessJson <T>(T data) { var serverResponse = ResponseProvider.Success(data); return(Ok(serverResponse)); }
/// <summary> /// AsSuccess /// </summary> /// <typeparam name="T"></typeparam> /// <param name="response"></param> /// <param name="data"></param> /// <returns></returns> public static Response AsSuccessJson <T>(this IResponseFormatter response, T data) where T : class { var serverResponse = ResponseProvider.Success(data); return(response.AsJson(serverResponse)); }