public EncFileUpload(IInternalDracoonClient client, string actionId, FileUploadRequest request, Stream input, UserPublicKey publicKey, long fileSize) : base(client, actionId, request, input, fileSize) { _userPublicKey = publicKey; LogTag = nameof(EncFileUpload); }
public async void UploadOneFile() { // To upload a file you need to provide the path of the file and the BusinessType where it's going to be uploaded. // Also, if you have a multitenant-token, the tenantId needs to be provided. #region Custom parameters var tenantId = "MyTenantId"; // Only necessary for multi-tenant token. var businessTypeId = 0; // Use the desired businessType. #endregion _output.WriteTittle("Executing Streaming.SDK example: Upload one file by Stream"); // Configure the file that is going to be uploaded. var fileContent = "Cats have contributed to the extinction of 33 different species. Humans might be the next ones."; var ms = new MemoryStream(Encoding.UTF8.GetBytes(fileContent)); var request = new FileUploadRequest { Name = "testStreamFile.txt", BusinessTypeId = businessTypeId }; // Upload the file. var uploadResult = await Streaming.UploadFileAsync(request, ms, tenantId : tenantId); Assert.IsType <FileUploadInfo>(uploadResult); Assert.Equal(request.Name, uploadResult.Name); Assert.Equal(ms.Length, uploadResult.Size); // Print the result. _output.WriteLine("File was uploaded:"); _output.WriteJson(uploadResult); }
public PrivateApiResponse <FileUploadResponse> Upload(string filePath, string recordId, string resourceId, string contentType, bool isSublist) { var fileName = filePath.Split('/').Last(); var content = Util.ReadFileAsBase64String(System.IO.Path.Combine(Util.GetTestDirectory(), filePath)); var request = new FileUploadRequest { Metadata = new FileUploadRequest.MetadataClass { FileName = fileName, RecordId = recordId, ResourceId = resourceId, FileMime = contentType, FileSize = null, Sublist = isSublist ? "1" : "0" }, Content = content }; var stringRequest = ConvertToJsonString(request, null); using (var step = LogHelper.LoggerForCurrentTest.EnterReproStep("Uploading file")) { return(ProcessResponseWithContent <FileUploadResponse>(Connection.SendAsync(EndPoint, stringRequest, HttpMethod.Post).Result)); } }
public void StartUploadFileAsync(string actionId, FileUploadRequest request, Stream input, long fileSize = -1, IFileUploadCallback callback = null) { FileUpload upload = CreateFileUploadInternally(actionId, request, input, fileSize, callback); upload.RunAsync(); }
/// <summary> /// 上传模板文件 /// </summary> public void uploadTemplate() { try { FileUploadRequest fileUploadRequest = new FileUploadRequest("D://telmplate//劳动合同模板.pdf", "劳动合同模板.pdf", FileType.template, "00765245060136194048"); FileUploadResponse response = client.fileUpload(fileUploadRequest); Console.WriteLine("上传模板文件-响应数据:" + JSONUtil.getJsonStringFromObject(response)); } catch (SignApplicationException sae) { // 捕获网关校验数据 Console.WriteLine("上传模板文件-网关异常状态码为:" + sae.return_code); Console.WriteLine("上传模板文件-网关异常信息为:" + sae.return_message); } catch (SignServerException sse) { // 捕获网关校验数据 Console.WriteLine("上传模板文件-业务异常状态码为:" + sse.result_code); Console.WriteLine("上传模板文件-业务异常信息为:" + sse.result_message); } catch (Exception e) { Console.WriteLine("上传模板文件-异常:" + e.Message); } }
/// <summary> /// 文件上传 /// </summary> /// <param name="request"></param> /// <returns></returns> public FileUploadResponse fileUpload(FileUploadRequest request) { if ( request.fileData == null || request.fileData.Length == 0 || request.fileDataName == null || request.fileDataName.Trim() == string.Empty ) { BaseSignResponse baseSignResponse = new BaseSignResponse(); baseSignResponse.result_code = "4001"; baseSignResponse.result_message = "参数校验异常"; throw new SignServerException("参数校验异常", baseSignResponse, null); } FileInfo info = new FileInfo(); info.fileData = request.fileData; info.fileName = request.fileName; info.key = "file"; Dictionary <string, string> @params = new Dictionary <string, string>(); @params.Add("file_type", request.fileType); @params.Add("file_name", request.fileName); @params.Add("user_id", request.userId); FileUploadResponse fileUploadResponse = base.FileUpload <FileUploadResponse>(ApiUrlConstant.FileManager.FileUpload, info, @params); return(fileUploadResponse); }
public FileResponse Upload(FileUploadRequest request) { var requestParams = this.request.BuildRequestParams(request); var response = this.request.ExecuteAndDeserializeRequest <FileResponse>("/files.upload", requestParams, file: request); return(response); }
private void toolStripButtonUploadFile_Click(object sender, EventArgs e) { if (openFileDialog1.ShowDialog() == System.Windows.Forms.DialogResult.OK) { System.IO.Stream stream = openFileDialog1.OpenFile(); byte[] fileContents; fileContents = System.IO.File.ReadAllBytes(openFileDialog1.FileName); if (fileContents.Length > 512 * 1024 * 1024) { MessageBox.Show("File is too large beyond of PLM360's file limitation: 512M"); return; } FileUploadRequest fileUpReq = new FileUploadRequest { fileName = System.IO.Path.GetFileName(openFileDialog1.FileName), title = System.IO.Path.GetFileNameWithoutExtension(openFileDialog1.FileName), description = "This is a file uploaded by PLM360 REST API" }; foreach (ListViewItem lvi in lvItems.SelectedItems) { Item item = (Item)lvi.Tag; plmSvc.AddFile(item.workspaceId, item.id, fileUpReq, fileContents); } } }
/// <summary> /// 百度语音验证 /// </summary> public void baiduVideoVerify() { BaiDuAiFaceVideoVerifyRequest request = new BaiDuAiFaceVideoVerifyRequest(); request.session_id = "01562e5349b0a4044a23784dc707d46f"; try { FileUploadRequest fileUploadRequest = new FileUploadRequest("D://video//我的视频.mp4", "我的视频.mp4"); request.video_file = fileUploadRequest.fileData; //建议视频大小控制在10M/1min以内 BaiDuAiFaceVideoVerifyResponse response = client.Auth.baiduVideoVerify(request); Console.WriteLine("百度语音验证-响应数据:" + JSONUtil.getJsonStringFromObject(response)); } catch (SignApplicationException sae) { // 捕获网关校验数据 Console.WriteLine("百度语音验证-网关异常状态码为:" + sae.return_code); Console.WriteLine("百度语音验证-网关异常信息为:" + sae.return_message); } catch (SignServerException sse) { // 捕获网关校验数据 Console.WriteLine("百度语音验证-业务异常状态码为:" + sse.result_code); Console.WriteLine("百度语音验证-业务异常信息为:" + sse.result_message); } catch (Exception e) { Console.WriteLine("百度语音验证-异常为:" + e.Message); } }
public async Task FileUploadService_UploadFile_ReturnsCurropted() { var wc = new Mock <IWorkContext>(); var cId = 123; wc.Setup(w => w.CurrentUserId).Returns(cId); var ah = new Mock <AuditHelper>(wc.Object); var vFactory = new Mock <IFileHandlerFactory>(); vFactory.Setup(v => v.IsSupportedExtension(It.IsAny <string>())).Returns(() => true); vFactory.Setup(v => v.Validate(It.IsAny <string>(), It.IsAny <byte[]>())).Returns(() => FileStatusCode.Corrupted); var uReq = new FileUploadRequest { FileName = "ttt.txt", Bytes = new byte[] { 1, 1, 1, 1, 1 } }; var sessionRepo = new Mock <IFileUploadSessionRepository>(); sessionRepo.Setup(s => s.Create(It.IsAny <FileUploadSessionModel>())) .Callback <FileUploadSessionModel>(n => n.Id = 123); var uMgr = new FileUploadService(vFactory.Object, null, null, null, sessionRepo.Object, null, ah.Object); var upRes = await uMgr.UploadAsync(new[] { uReq }); var res = upRes.First(); res.Status.ShouldBe(FileStatusCode.Corrupted); res.WasUploaded.ShouldBeFalse(); }
public async Task CreateFileUploadTest() { var apiClientMock = new Mock <IApiClient>(); var signMock = new Mock <ISignService>(); var configMock = new Mock <IConfigurationProvider>(); configMock.Setup <string>(x => x.GetUploadsUrl()).Returns("https://example2.com"); SecurionPayGateway gateway = new SecurionPayGateway(apiClientMock.Object, configMock.Object, signMock.Object); var request = new FileUploadRequest() { File = new byte[1] { 233 }, FileName = "test.jpg", Purpose = SecurionPay.Enums.FileUploadPurpose.DisputeEvidence }; await gateway.CreateFileUpload(request); apiClientMock.Verify <Task <FileUpload> >(api => api.SendMultiPartRequest <FileUpload>( It.Is <HttpMethod>(method => method == HttpMethod.Post), It.Is <string>(action => action == configMock.Object.GetUploadsUrl() + "/files"), It.Is <Dictionary <string, string> >(dictionary => dictionary.Any(p => p.Key == "purpose" && p.Value == "dispute_evidence")), It.Is <byte[]>(array => array[0] == 233), It.Is <string>(f => f == "test.jpg")) , Times.Once); }
public void TestUploadFile() { // 接口请求 FileUploadRequest request = new FileUploadRequest(); // 请求参数 GoodsParam param = new GoodsParam(); // 属性赋值 param.goods_name = "iphone6"; // 设置请求参数 request.Param = param; List <UploadFile> files = new List <UploadFile>(); files.Add(new UploadFile("headImg", @"D:\1.txt")); files.Add(new UploadFile("idcardImg", @"D:\2.txt")); request.Files = files; // 发送请求,返回结果 FileUploadResponse response = client.Execute <FileUploadResponse>(request); if (response.IsSuccess()) { Assert.IsTrue(response.data != null); } else { throw new SystemException(response.msg); } }
private void PerformParameterTestForUploadOperation(FileUploadRequest reqeust, int expectedErrorCode, bool isExpectedSuccess) { var handler = new DefaultManager(); var str = Newtonsoft.Json.JsonConvert.SerializeObject(reqeust).Replace("/n", Environment.NewLine).Replace("/0", '\u0000'.ToString()); PrivateApiResponse <FileUploadResponse> response = null; using (LogHelper.LoggerForCurrentTest.EnterReproStep("Send an upload file request with special string parameter's value.")) { response = handler.Send <FileUploadResponse>(FileStorageManager.EndPoint, str, HttpMethod.POST); } try { if (isExpectedSuccess) { PrAssert.That(response, PrIs.SuccessfulResponse()); } else { PrAssert.That(response, PrIs.ErrorResponse().And.ErrorCode(expectedErrorCode).And.HttpCode(400)); } } finally { var id = response?.Result?.Id; if (id != null) { new FileStorageManager().Delete(id); } } }
public IActionResult Create(FileUploadRequest request) { if (request == null) { return(this.BadRequest()); } AccountSasBuilder sas = new AccountSasBuilder { // Allow access to blobs Services = AccountSasServices.Blobs, // Allow access to the service level APIs ResourceTypes = AccountSasResourceTypes.Object, // Access expires in 1 hour! ExpiresOn = DateTimeOffset.UtcNow.AddHours(1), StartsOn = DateTimeOffset.UtcNow.AddSeconds(-30) }; sas.SetPermissions(AccountSasPermissions.Write | AccountSasPermissions.Create | AccountSasPermissions.Delete); StorageSharedKeyCredential credential = new StorageSharedKeyCredential(_accountName, _key); var container = new BlobContainerClient(_connectionString, "photos"); var blob = container.GetBlobClient(request.FileName); var result = new UriBuilder(blob.Uri); result.Query = sas.ToSasQueryParameters(credential).ToString(); return(this.Ok(result.Uri.ToString())); }
public static DataResponse Upload(FileUploadRequest request, string checkSum) { var dataResponse = new DataResponse(false, -1); try { using (var fileStream = new FileStream(request.VirtualPath, FileMode.Open, FileAccess.Read)) { request.DataStream = fileStream; using (var sc = new MainUpdateSourceServiceClient("BasicHttpBinding_IMainUpdateSourceService", ApplicationContext.MainUpdateSourceUrl)) { bool status; //Return Task<MessageResult> var strResult = sc.UploadFile(checkSum, request.Name, request.SecurityKey, request.VirtualPath, request.DataStream, out status); dataResponse = RequestResponseUtils.GetData <DataResponse>(strResult); } } } catch (Exception ex) { dataResponse.Message = ex.Message; //Log _log.Error("ServiceManager.Upload Error", ex); } return(dataResponse); }
public void Execute() { var request = new FileUploadRequest(_fileBasicInfo.FileName, _fileBasicInfo.FileBytes, _receiverNumber); _serverConnection.SendFileUploadRequest(request); }
/// <summary> /// Handelt de bestand upload af. /// </summary> /// <param name="request"></param> /// <param name="client"></param> private void HandleFileUploadRequest(FileUploadRequest request, Client client) { FileStateObject state = new FileStateObject(client, request.File); Receive(client, state.Buffer, 0, FileStateObject.BufferSize, 0, ReceiveFileCallback, state); //client.Socket.BeginReceive(state.Buffer, 0, FileStateObject.BufferSize, 0, ReceiveFileCallback, state); }
private void FileUploadRequestHandler(FileUploadRequest request) { FileUploadResponse response = new FileUploadResponse(request); if (request.CurrentPosition == 0) { EventArguments.FileUploadRequestEventArguments args = new EventArguments.FileUploadRequestEventArguments(() => { //Confirm File Upload response.DestinationFilePath = request.DestinationFilePath; SendMessage(response); }, () => { //Refuse File Upload response.HasError = true; response.Exception = new Exception("The file upload request was refused by the user!"); SendMessage(response); }); args.Request = request; OnFileUploadRequest(args); } else { Helpers.FileHelper.AppendAllBytes(request.DestinationFilePath, request.BytesToWrite); SendMessage(response); OnUploadFileProgress(new EventArguments.FileUploadProgressEventArguments() { CurrentPosition = request.CurrentPosition, FileName = request.FileName, TotalBytes = request.TotalBytes, DestinationPath = request.DestinationFilePath }); } }
/// <summary> /// 文件上传 /// </summary> /// <param name="VirtualPath"></param> /// <param name="file"></param> /// <param name="extension"></param> /// <returns></returns> public static OperationResult <string> UpLoadFile(string VirtualPath, HttpPostedFileBase file, string extension) { try { var fileContent = default(byte[]); var ism = file.InputStream; using (var ms = new MemoryStream()) { ism.CopyTo(ms); ms.Flush(); fileContent = ms.ToArray(); } using (Tuhu.Service.Utility.FileUploadClient fileUploadClient = new Tuhu.Service.Utility.FileUploadClient()) { var fileUploadRequest = new FileUploadRequest { Contents = fileContent, DirectoryName = VirtualPath, Extension = "." + extension }; var result = fileUploadClient.UploadFile(fileUploadRequest); return(result); } } catch (Exception ex) { throw; } }
public async Task <IActionResult> UploadFile(string fileId = null, string fileName = null, string contentType = null, string description = null) { if (Request.Form.Files.Count != 1) { return(BadRequest("This endpoint requires 1 file.")); } var file = Request.Form.Files.Single(); fileName = !string.IsNullOrEmpty(fileName) ? fileName : file.FileName; fileId = !string.IsNullOrEmpty(fileId) ? fileId : fileName.Replace(" ", "_"); contentType = !string.IsNullOrEmpty(contentType) ? contentType : file.ContentType; var saveFileRequest = new FileUploadRequest { FileId = fileId, FileName = fileName, ContentType = contentType, File = file, Description = description }; var fileSaved = await filesService.SaveFile(basePath, saveFileRequest); if (fileSaved) { return(Ok("The file was uploaded.")); } return(Conflict("There was a problem uploading the file.")); }
private FileUpload CreateFileUploadInternally(string actionId, FileUploadRequest request, Stream input, long fileSize = -1, IFileUploadCallback callback = null) { _client.Executor.CheckApiServerVersion(); #region Parameter Validation CheckUploadActionId(actionId); request.MustNotNull(nameof(request)); request.ParentId.MustPositive(nameof(request.ParentId)); request.Name.MustNotNullOrEmptyOrWhitespace(nameof(request.Name)); input.CheckStreamCanRead(nameof(input)); #endregion FileUpload upload; if (IsNodeEncrypted(request.ParentId)) { UserKeyPair keyPair = _client.AccountImpl.GetAndCheckUserKeyPair(); upload = new EncFileUpload(_client, actionId, request, input, keyPair.UserPublicKey, fileSize); } else { upload = new FileUpload(_client, actionId, request, input, fileSize); } _runningUploads.Add(actionId, upload); upload.AddFileUploadCallback(callback); upload.AddFileUploadCallback(this); return(upload); }
/// <summary> /// 文件验章V2 /// </summary> public void checkFileV2() { try { FileUploadRequest fileUploadRequest = new FileUploadRequest("D://contract//签署完成合同.pdf", "签署完成合同.pdf"); SignCheckFileV2Request request = new SignCheckFileV2Request(); request.fileData = fileUploadRequest.fileData; request.fileDataName = fileUploadRequest.fileDataName; SignCheckFileV2Response signCheckFileResponse = client.SignCheck.CheckFileV2(request); Console.WriteLine("文件验章V2-响应数据:" + JSONUtil.getJsonStringFromObject(signCheckFileResponse)); } catch (SignApplicationException sae) { // 捕获网关校验数据 Console.WriteLine("文件验章V2-网关异常状态码为:" + sae.return_code); Console.WriteLine("文件验章V2-网关异常信息为:" + sae.return_message); } catch (SignServerException sse) { // 捕获网关校验数据 Console.WriteLine("文件验章V2-业务异常状态码为:" + sse.result_code); Console.WriteLine("文件验章V2-业务异常信息为:" + sse.result_message); } catch (Exception e) { Console.WriteLine("文件验章V2-异常为:" + e.Message); } }
public JsonResult Upload(FileUploadRequest model) { var files = Request.Files; string path = ""; string type = ""; string fileName = ""; var folderPath = $"C:\\inetpub\\wwwroot\\static\\import\\{model.Type}"; HttpPostedFileBase file; switch (files.Count) { case 1: file = files[0]; type = file.FileName.Substring(file.FileName.LastIndexOf('.')); fileName = $"{model.IdolName}{model.Key}.{type}"; path = $"{folderPath}\\{fileName}"; file.SaveAs(path); //将上传的东西保存 using (StreamWriter sw = new StreamWriter(GetJsonFile(model.Type), true, Encoding.UTF8)) { switch (model.Type) { case "Painting": sw.WriteLine(JsonConvert.SerializeObject(new UploadTypeJsonPainting() { author = "", url = path, weibo = model.Weibo })); break; case "Photo": sw.WriteLine(JsonConvert.SerializeObject(new UploadTypeJsonPhoto() { title = model.Key, img = path, from = model.IdolName })); break; case "Emoji": sw.WriteLine(fileName); break; default: break; } } return(Json(true)); default: for (int i = 0; i < files.Count; i++) { file = files[i]; path = $"{folderPath}\\{model.IdolName}{model.Key}{i}.{file.FileName.Substring(file.FileName.LastIndexOf('.'))}"; file.SaveAs(path); //将上传的东西保存 } return(Json(true)); } }
protected async Task <byte[]> SendAsync(FileUploadRequest fortnoxRequest) { var boundary = "----boundary" + new Random().Next(); var content = new MultipartFormDataContent(boundary); var fileContent = new ByteArrayContent(fortnoxRequest.FileData); fileContent.Headers.Add("Content-Type", "application/octet-stream"); var headerValue = "form-data; name=\"Filedata\"; filename=\"" + fortnoxRequest.FileName + "\""; //Issue: file name can contain special characters e.g. "äöå", HttpClient follows strict HTTP standard for headers encoding, while server expects pure UTF-8 // Workaround inspired by https://stackoverflow.com/questions/21928982/how-to-disable-base64-encoded-filenames-in-httpclient-multipartformdatacontent var bytes = Encoding.UTF8.GetBytes(headerValue); var chars = bytes.Select(b => (char)b).ToArray(); headerValue = new string(chars); //-------------End of workaround-------------// fileContent.Headers.Add("Content-Disposition", headerValue); content.Add(fileContent, "Filedata", fortnoxRequest.FileName); var httpRequest = new HttpRequestMessage(HttpMethod.Post, fortnoxRequest.AbsoluteUrl); httpRequest.Content = content; return(await SendAsync(httpRequest).ConfigureAwait(false)); }
/// <summary> /// 上传印章文件 /// </summary> public void uploadSeal() { try { FileUploadRequest fileUploadRequest = new FileUploadRequest("D:/seal/seal.png", "我的印章.png", FileType.impression, "00765245060136194048"); FileUploadResponse response = client.fileUpload(fileUploadRequest); Console.WriteLine("上传印章文件-响应数据:" + JSONUtil.getJsonStringFromObject(response)); } catch (SignApplicationException sae) { // 捕获网关校验数据 Console.WriteLine("上传印章文件-网关异常状态码为:" + sae.return_code); Console.WriteLine("上传印章文件-网关异常信息为:" + sae.return_message); } catch (SignServerException sse) { // 捕获网关校验数据 Console.WriteLine("上传印章文件-业务异常状态码为:" + sse.result_code); Console.WriteLine("上传印章文件-业务异常信息为:" + sse.result_message); } catch (Exception e) { Console.WriteLine("上传印章文件-异常:" + e.Message); } }
public void ExecuteAndDeserializeRequestHandlesComplexRequest() { var token = "xxx"; var path = "/root"; var jsonPayload = "{\"json\": \"result\""; var dictionaryParams = new Dictionary <string, string> { { "foo", "bar" } }; var fileRequest = new FileUploadRequest { Title = "file", Filename = "file.txt", FileData = new byte[10] }; var restResponse = new RestResponse(); restResponse.Content = jsonPayload; var mockRestClient = new Mock <IRestClient>(); mockRestClient.Setup(r => r.Execute(It.IsAny <IRestRequest>())) .Callback <IRestRequest>(r => { Assert.Equal(1, r.Files.Count); Assert.Equal(fileRequest.Title, r.Files[0].Name); Assert.Equal(fileRequest.Filename, r.Files[0].FileName); Assert.Equal(fileRequest.FileData.Length, r.Files[0].ContentLength); Assert.Equal(Method.PUT, r.Method); Assert.Equal(path, r.Resource); Assert.Equal(2, r.Parameters.Count); Assert.Equal(token, r.Parameters.First(p => p.Name == "token").Value); Assert.Equal("bar", r.Parameters.First(p => p.Name == "foo").Value); }) .Returns(restResponse) .Verifiable(); var mockParser = new Mock <IResponseParser>(); mockParser.Setup(p => p.Deserialize <TestParams>(jsonPayload)) .Returns(new TestParams { MyInt = 90 }) .Verifiable(); var subject = new RestSharpRequestHandler(token); subject.RestClient = mockRestClient.Object; subject.ResponseParser = mockParser.Object; var result = subject.ExecuteAndDeserializeRequest <TestParams>(path, dictionaryParams, HttpMethod.PUT, fileRequest); Assert.Equal(90, result.MyInt); mockParser.Verify(); mockRestClient.Verify(); }
public async Task <IActionResult> UploadTemplate([FromForm] FileUploadRequest request) { await using var stream = request.File.OpenReadStream(); await _vmTemplateService.UploadTemplate(DatabaseContext, request.Name, GetUser(), stream, request.File.Length); return(Ok()); }
public FileUploadResponse FileUpload(FileUploadRequest req) { var rep = new FileUploadResponse(); var context = httpContextAccessor.HttpContext; var files = context.Request.Form.Files; return(rep); }
public PrivateApiResponse <FileUploadResponse> Upload(FileUploadRequest request, Func <JToken, JToken> transformation = null) { var stringRequest = ConvertToJsonString(request, transformation); using (var step = LogHelper.LoggerForCurrentTest.EnterReproStep("Uploading file")) { return(ProcessResponseWithContent <FileUploadResponse>(Connection.SendAsync(EndPoint, stringRequest, HttpMethod.Post).Result)); } }
public void FileUploadRequestTests_GetsExtensionWithoutDot() { var r = new FileUploadRequest { FileName = "ccc.e" }; r.Extension.SequenceEqual("e"); }
// TODO Move to separate service. private FileUploadResponse StoreImage(FileUploadRequest request) { var uploadId = Guid.NewGuid().ToString(); var filename = Path.Combine(GetUploadDirectory(), uploadId); using (FileStream fileStream = new FileStream(filename, FileMode.Create)) { request.File.Value.CopyTo(fileStream); } return new FileUploadResponse() { Id = uploadId }; }