public override UploadResult Upload(Stream stream, string fileName) { UploadResult result = new UploadResult(); CustomUploaderInput input = new CustomUploaderInput(fileName, ""); CustomUploaderRequestFormat requestFormat = uploader.GetRequestFormat(CustomUploaderDestinationType.FileUploader); if (requestFormat == CustomUploaderRequestFormat.MultipartFormData) { result = SendRequestFile(uploader.GetRequestURL(input), stream, fileName, uploader.GetFileFormName(), uploader.GetArguments(input), uploader.GetHeaders(input), null, uploader.ResponseType, uploader.RequestType); } else if (requestFormat == CustomUploaderRequestFormat.Binary) { result.Response = SendRequest(uploader.RequestType, uploader.GetRequestURL(input), stream, UploadHelpers.GetMimeType(fileName), uploader.GetArguments(input), uploader.GetHeaders(input), null, uploader.ResponseType); } else { throw new Exception("Unsupported request format."); } try { uploader.ParseResponse(result, input); } catch (Exception e) { Errors.Add(Resources.CustomFileUploader_Upload_Response_parse_failed_ + Environment.NewLine + e); } return(result); }
public override UploadResult Upload(Stream stream, string fileName) { CustomUploaderArgumentInput input = new CustomUploaderArgumentInput(fileName, ""); CustomUploaderRequestFormat requestFormat = uploader.GetRequestFormat(CustomUploaderDestinationType.ImageUploader); if (requestFormat == CustomUploaderRequestFormat.FormData) { UploadResult result = SendRequestFile(uploader.GetRequestURL(), stream, fileName, uploader.GetFileFormName(), uploader.GetArguments(input), uploader.GetHeaders(input), null, uploader.ResponseType, uploader.GetHttpMethod()); if (result.IsSuccess) { try { uploader.ParseResponse(result); } catch (Exception e) { Errors.Add(Resources.CustomFileUploader_Upload_Response_parse_failed_ + Environment.NewLine + e); } } return(result); } else { throw new Exception("Unsupported request format."); } }
public override UploadResult ShareURL(string url) { UploadResult result = new UploadResult { URL = url, IsURLExpected = false }; CustomUploaderArgumentInput input = new CustomUploaderArgumentInput("", url); CustomUploaderRequestFormat requestFormat = uploader.GetRequestFormat(CustomUploaderDestinationType.URLSharingService); if (requestFormat == CustomUploaderRequestFormat.FormData) { result.Response = SendRequestMultiPart(uploader.GetRequestURL(), uploader.GetArguments(input), uploader.GetHeaders(input), null, uploader.ResponseType, uploader.GetHttpMethod()); } else if (requestFormat == CustomUploaderRequestFormat.URLQuery) { result.Response = SendRequest(uploader.GetHttpMethod(), uploader.GetRequestURL(), uploader.GetArguments(input), uploader.GetHeaders(input), null, uploader.ResponseType); } else if (requestFormat == CustomUploaderRequestFormat.JSON) { result.Response = SendRequest(uploader.GetHttpMethod(), uploader.GetRequestURL(), uploader.GetData(input), UploadHelpers.ContentTypeJSON, uploader.GetArguments(input), uploader.GetHeaders(input), null, uploader.ResponseType); } else { throw new Exception("Unsupported request format."); } return(result); }
public override UploadResult UploadText(string text, string fileName) { UploadResult result = new UploadResult(); CustomUploaderArgumentInput input = new CustomUploaderArgumentInput(fileName, text); CustomUploaderRequestFormat requestFormat = uploader.GetRequestFormat(CustomUploaderDestinationType.TextUploader); if (requestFormat == CustomUploaderRequestFormat.FormData) { if (string.IsNullOrEmpty(uploader.FileFormName)) { result.Response = SendRequestMultiPart(uploader.GetRequestURL(), uploader.GetArguments(input), uploader.GetHeaders(input), null, uploader.ResponseType, uploader.GetHttpMethod()); } else { byte[] bytes = Encoding.UTF8.GetBytes(text); using (MemoryStream stream = new MemoryStream(bytes)) { result = SendRequestFile(uploader.GetRequestURL(), stream, fileName, uploader.GetFileFormName(), uploader.GetArguments(input), uploader.GetHeaders(input), null, uploader.ResponseType, uploader.GetHttpMethod()); } } } else if (requestFormat == CustomUploaderRequestFormat.URLQuery) { result.Response = SendRequest(uploader.GetHttpMethod(), uploader.GetRequestURL(), uploader.GetArguments(input), uploader.GetHeaders(input), null, uploader.ResponseType); } else if (requestFormat == CustomUploaderRequestFormat.JSON) { result.Response = SendRequest(uploader.GetHttpMethod(), uploader.GetRequestURL(), uploader.GetData(input), UploadHelpers.ContentTypeJSON, uploader.GetArguments(input), uploader.GetHeaders(input), null, uploader.ResponseType); } else { throw new Exception("Unsupported request format."); } try { uploader.ParseResponse(result); } catch (Exception e) { Errors.Add(Resources.CustomFileUploader_Upload_Response_parse_failed_ + Environment.NewLine + e); } return(result); }
private CustomUploaderRequestFormat CheckRequestFormat(CustomUploaderRequestFormat format) { // For backward compatibility if (format == CustomUploaderRequestFormat.None) { if (RequestType == HttpMethod.POST) { return(CustomUploaderRequestFormat.MultipartFormData); } else { return(CustomUploaderRequestFormat.URLQueryString); } } return(format); }
public override UploadResult ShortenURL(string url) { UploadResult result = new UploadResult { URL = url }; CustomUploaderArgumentInput input = new CustomUploaderArgumentInput("", url); CustomUploaderRequestFormat requestFormat = uploader.GetRequestFormat(CustomUploaderDestinationType.URLShortener); if (requestFormat == CustomUploaderRequestFormat.MultipartFormData) { result.Response = SendRequestMultiPart(uploader.GetRequestURL(), uploader.GetArguments(input), uploader.GetHeaders(input), null, uploader.ResponseType, uploader.RequestType); } else if (requestFormat == CustomUploaderRequestFormat.URLQueryString) { result.Response = SendRequest(uploader.RequestType, uploader.GetRequestURL(), uploader.GetArguments(input), uploader.GetHeaders(input), null, uploader.ResponseType); } else if (requestFormat == CustomUploaderRequestFormat.JSON) { result.Response = SendRequest(uploader.RequestType, uploader.GetRequestURL(), uploader.GetData(input), UploadHelpers.ContentTypeJSON, uploader.GetArguments(input), uploader.GetHeaders(input), null, uploader.ResponseType); } else if (requestFormat == CustomUploaderRequestFormat.FormURLEncoded) { result.Response = SendRequestURLEncoded(uploader.RequestType, uploader.GetRequestURL(), uploader.GetArguments(input), uploader.GetHeaders(input), null, uploader.ResponseType); } else { throw new Exception("Unsupported request format."); } try { uploader.ParseResponse(result, true); } catch (Exception e) { Errors.Add(Resources.CustomFileUploader_Upload_Response_parse_failed_ + Environment.NewLine + e); } return(result); }