1

如何使用 jodd HTTP 在同一请求中上传多个文件?

我尝试了类似以下的方法,但只发布了第一个文件。

HttpRequest httpRequest = HttpRequest
        .post("http://srv:8080/api/dlapp/add-file-entry")
        .form(
            "title", "test",
            "description", "Upload test",
            "file", new File("d:\\a.jpg.zip"),
            "file", new File("d:\\b.jpg.zip")
        );

    HttpResponse httpResponse = httpRequest.send();
4

1 回答 1

1

那是正确的代码。您只需添加文件参数:

HttpRequest httpRequest = HttpRequest.post("localhost:8173/echo")
        .form(
            "title", "test",
            "description", "Upload test",
            "file1", temp1,
            "file2", temp2
        );

不多也不少。有一个测试用例可以检查这一点。

最简单的检查方法是在本地机器上启动例如Wireshark并简单地检查请求;其中必须有两个文件块。

您的服务器端是否有可能由于某种原因不接受文件?

您使用最新版本 (v5.0.x) 吗?

ps 如果您要发送两个文件,请使用两个不同的参数名称(例如file1, file2)。

于 2019-05-23T09:25:42.577 回答