c#HttpClient上传文件到spring rest服务(c# HttpClient upload file to spring rest service)

编程入门 行业动态 更新时间:2024-10-27 11:19:36
c#HttpClient上传文件到spring rest服务(c# HttpClient upload file to spring rest service)

问题:我有一个Java Spring rest服务来上传文件(大尺寸)。 我想使用.NET httpClient(或其他.net客户端)来调用上传服务。

问题:

似乎发送大文件的最佳选择是多部分文件,什么是互操作性? 如果不可能,最好的选择是什么?

谢谢!

Problem: I have a Java spring rest service to upload a file (large size). I want use a .NET httpClient (or other .net client) to call upload service.

Questions:

It seems that best option to send large file is multi-part file, what's about interoperability ? If it weren't possible, what is the best alternative ?

Thank you!

最满意答案

这就是答案:我可以将带有多部分附件的文件从c#client发送到Java JAX Rest Webservice。

try { using ( var client = new HttpClient()) using (var form = new MultipartFormDataContent()) { using (var stream = new FileStream(fileName, FileMode.Open, FileAccess.Read, FileShare.ReadWrite)) { using (var fileContent = new StreamContent(stream)) { fileContent.Headers.ContentDisposition = new ContentDispositionHeaderValue("attachment") {FileName = fileName, DispositionType = DispositionTypeNames.Attachment, Name = "fileData"}; form.Add(fileContent); // only for test purposes, for stable environment, use ApiRequest class. response = client.PostAsync(url, form).Result; } } } return response.RequestMessage != null ? response.ReasonPhrase : null; } catch (Exception ex) { TraceManager.TraceError("Post Asyn Request to " + url + " \n" + ex.Message, ex); throw; }

This is the answer: I can send a file with multipart attachment from c# client to Java JAX Rest Webservice.

try { using ( var client = new HttpClient()) using (var form = new MultipartFormDataContent()) { using (var stream = new FileStream(fileName, FileMode.Open, FileAccess.Read, FileShare.ReadWrite)) { using (var fileContent = new StreamContent(stream)) { fileContent.Headers.ContentDisposition = new ContentDispositionHeaderValue("attachment") {FileName = fileName, DispositionType = DispositionTypeNames.Attachment, Name = "fileData"}; form.Add(fileContent); // only for test purposes, for stable environment, use ApiRequest class. response = client.PostAsync(url, form).Result; } } } return response.RequestMessage != null ? response.ReasonPhrase : null; } catch (Exception ex) { TraceManager.TraceError("Post Asyn Request to " + url + " \n" + ex.Message, ex); throw; }

更多推荐

本文发布于:2023-08-01 10:13:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1356771.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:上传文件   spring   HttpClient   rest   service

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!