public async Task <HttpResponseMessage> SendFriendCircleImage(SendFriendCircleImage sendFriendCircleImage) { ResponseBase <IList <micromsg.SnsUploadResponse> > response = new ResponseBase <IList <micromsg.SnsUploadResponse> >(); try { IList <micromsg.SnsUploadResponse> list = new List <micromsg.SnsUploadResponse>(); foreach (var item in sendFriendCircleImage.ObjectNames) { var buffer = await FileStorageHelper.DownloadToBufferAsync(item); var result = wechat.SnsUpload(sendFriendCircleImage.WxId, new MemoryStream(buffer)); if (result == null) { throw new Exception("上传失败"); } list.Add(result); } response.Data = list; response.Message = "上传成功"; } catch (ExpiredException ex) { response.Success = false; response.Code = "401"; response.Message = ex.Message; } catch (Exception ex) { response.Success = false; response.Code = "500"; response.Message = ex.Message; } return(await response.ToHttpResponseAsync()); }
public async Task <HttpResponseMessage> SendFriendCircleImage() { ResponseBase <IList <SendFriendCircleImage> > response = new ResponseBase <IList <SendFriendCircleImage> >(); if (!Request.Content.IsMimeMultipartContent()) { response.Success = false; response.Code = "400"; response.Message = "请表单提交"; return(await response.ToHttpResponseAsync()); } if (!Request.Content.IsMimeMultipartContent()) { response.Success = false; response.Code = "400"; response.Message = "请表单提交"; return(await response.ToHttpResponseAsync()); } var fileCount = HttpContext.Current.Request.Files.Count; if (fileCount == 0) { response.Success = false; response.Code = "400"; response.Message = "请上传文件"; } var wxId = HttpContext.Current.Request["WxId"]; if (string.IsNullOrEmpty(wxId)) { response.Success = false; response.Code = "400"; response.Message = "WxId不能为空"; return(await response.ToHttpResponseAsync()); } for (int i = 0; i < fileCount; i++) { var file = HttpContext.Current.Request.Files[i]; if (file.FileName.IsImage() && file.FileName.IsVideo()) { response.Success = false; response.Code = "400"; response.Message = $"{file.FileName}不是图片文件"; return(await response.ToHttpResponseAsync()); } } IList <SendFriendCircleImage> list = new List <SendFriendCircleImage>(); try { for (int i = 0; i < fileCount; i++) { var file = HttpContext.Current.Request.Files[i]; var result = wechat.SnsUpload(wxId, file.InputStream); if (result == null || result.BaseResponse.Ret != (int)MMPro.MM.RetConst.MM_OK) { throw new Exception("上传失败"); } SendFriendCircleImage sendFriendCircleImage = new SendFriendCircleImage() { ClientId = result.ClientId, BufferUrl = result.BufferUrl, ThumbUrls = result.ThumbUrls, Id = result.Id, Type = result.Type, }; list.Add(sendFriendCircleImage); response.Data = list; } response.Message = "上传成功"; } catch (ExpiredException ex) { response.Success = false; response.Code = "401"; response.Message = ex.Message; } catch (Exception ex) { response.Success = false; response.Code = "500"; response.Message = ex.Message; } return(await response.ToHttpResponseAsync()); }