我需要将文件从文件夹同步到restendpoint。因此,如果文件被放置在特定文件夹中,我需要将该文件发送到接受多部分文件的RESTendpoint。我正在使用ApacheCamel来实现这一点。
RESTendpoint在Spring中编写,如下所示:
@PostMapping("/")
public String handleFileUpload(@RequestParam("file") MultipartFile file,
RedirectAttributes redirectAttributes) {
storageService.store(file);
redirectAttributes.addFlashAttribute("message",
"You successfully uploaded " + file.getOriginalFilename() + "!");
return "redirect:/";
}
我是Camel的新手,并且已经弄清楚了如何通过构建路由并获取文件来轮询目录,但是我无法弄清楚如何使用此路由将此文件放入其余endpoint。这是我尝试过的:
@Component
public class SampleCamelRouter extends RouteBuilder {
@Override
public void configure() throws Exception {
from("file://target/input?delay=4000")
.process(new Processor() {
public void process(Exchange exchange) throws Exception {
File filetoUpload = exchange.getIn().getBody(File.class);
String fileName = exchange.getIn().getHeader(Exchange.FILE_NAME, String.class);
MultipartEntityBuilder entity = MultipartEntityBuilder.create();
entity.addTextBody("fileName", fileName);
entity.addBinaryBody("file", filetoUpload);
ByteArrayOutputStream out = new ByteArrayOutputStream();
entity.build().writeTo(out);
InputStream inputStream = new ByteArrayInputStream(out.toByteArray());
exchange.getIn().setBody(inputStream);
}
})
.setHeader(Exchange.CONTENT_TYPE, constant("multipart/form-data"))
.setHeader(Exchange.HTTP_METHOD, constant("POST"))
.to("http://localhost:9090/");
}
}
但是当我运行这个时,我在rest服务器中得到以下异常:
org.apache.tomcat.util.http.fileupload.FileUploadException: the request was rejected because no multipart boundary was found
在camel端,请求失败,出现500错误。
任何线索都是值得赞赏的。
使用头="Content-Type=multipart/form-data",
到控制器中。
问题不在代码中,而是在请求中。多部分请求中缺少边界。正如在说明书中所述:
多部分实体的Content-Type字段需要一个参数“boundary”,用于指定封装边界。封装边界被定义为完全由两个连字符(“-”,十进制代码45)组成的一行,后跟Content-Type头字段中的边界参数值。这个和这个帖子应该也有帮助。
如何将文件发送到WebService?为了上传文件,我需要使用multipart/form-data;我想知道如何使用PHP中的curl来实现这一点。 我的代码是: 服务器上的故障是: 我怎样才能解决这个问题?
问题内容: 实际上,我正在使用带有Angular 2编码的接口的Spring REST API。 我的问题是我无法使用Angular 2上传文件。 我在Java中的Webresources是: 当我通过带有Auth标头等的URL请求调用它时(它具有适用于Chrome的Advanced Rest Client扩展),它完全可以正常工作 证明:(在这种情况下,一切正常) Spring配置文件和Pom依
在Django python服务器上,我定制了一个用户可以上传文件的URL。现在的问题是,当我点击浏览器时,我能够成功地上传文件,但当我使用curl尝试同样的事情时,我无法做到这一点。 意见。派克 ........ ........ ........ ........ 名单。html 在浏览器上 在终点站,我试过了 我尝试了一些其他的变化,但似乎没有成功。我还尝试了一些其他命令,它们给出了“无cs
问题内容: 以下是我用于将文件上传到服务器的代码。但是,即使经过几次尝试,甚至添加了严格模式,我都遇到了网络异常。 我是Android的新手,不知道如何使用异步任务,许多人建议您使用这种异步网络操作。谁能告诉我代码中哪里有错误以及应该在哪里使用异步任务? 问题答案: 有关更多信息,请参考此链接 http://vikaskanani.wordpress.com/2011/01/29/android-
问题内容: 我创建了一个从有权访问的FTP服务器下载文件的功能。如何将文件上传回FTP服务器? 以下是我使用的download_files方法: 问题答案: 使用Apache Commons Net库中的FTPClient类。 这是一个带有示例的代码段: 摘录自http://www.kodejava.org/examples/356.html
我正在构建一个功能,将文件从我的web应用程序上传到我的客户google drive。我不希望应用程序对用户进行身份验证。谁曾经上传过我文件中的任何文件?我想上传到我客户的谷歌硬盘。 我假设服务帐户是用于此目的的帐户。我说得对吗? 当我使用以下代码上传文件时,它会成功上传,但在“我的驱动器”下不可见。然后我添加了一个权限,基本上与我的gmail帐户共享该文件。然后它在“与我共享”部分可见。 我希望