java - 如何使用 StringBody 通过 HttpMime 上传文件?

标签 java groovy apache-commons

def params = new MultipartEntity();

params.addPart("name", new StringBody(fileName))
params.addPart("file", new StringBody(fileContent))
post.setEntity(params)

def response = httpclient.execute(post)

此代码不起作用。

def fileContent = new FileBody(new File(fileName))
def params = new MultipartEntity();

params.addPart("name", new StringBody(fileName))
params.addPart("file", fileContent)
post.setEntity(params)

这段代码可以。

它中断是因为我从我要发布到的 Tomcat 服务器收到 400 Bad Request。我不知道为什么它这么说,它是一个不受我控制的应用程序。

我不想将临时文件写入硬盘。我现在不清楚如何避免这种情况。

最佳答案

我认为您可能希望使用 name 作为 body 来代替 file:

  params.addPart("body", new StringBody(fileContent));

关于java - 如何使用 StringBody 通过 HttpMime 上传文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13167774/

相关文章:

java - 在可用的应用程序模块中找不到运行\"java\"的模块

java - 我的 else 语句中的代码已死,我不相信这是真的(java)?

java - Groovy:动态添加具有特定签名的方法

groovy - logback 需要 groovy.jar 还是 groovy-all.jar?

java - Apache Commons 项目是否与 Java 版本绑定(bind)?

java - 如何为路径设置自定义运行设置(用于代码运行程序扩展)?

java - (Java LibGDX) 如何在 LibGDX 中调整纹理大小?

java - 如何检查包含空元素的空字符串数组

java - groovy/java 检查列表交集并组合元素

java - Apache DefaultHttpClient 调用结果为 "java.lang.RuntimeException: Stub!"