微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

POST 请求中的 Apache Commons HTTPClient 上传文件以及参数

如何解决POST 请求中的 Apache Commons HTTPClient 上传文件以及参数

我一直在谷歌上搜索这个,但我只能找到过时的信息和不起作用的东西。

我已经尝试了 MultipartRequestEntities 和所有东西,但它们似乎没有正确设置参数。我已经运行了我的调试器,似乎正在发生的事情是当为文件设置请求实体时,它会覆盖参数,即使我将 getParams() 与 MultipartRequestEntity 一起使用。当我发现它这样做时,我尝试使用 FileRequestEntity 并通过在之后添加参数来翻转它,但所做的只是添加参数但由于某种原因删除了请求实体。

我正在尝试用 Java 编写 ShareX 的替代方案,因为我有 Windows 用户想要将 ShareX 与我的文件上传服务一起使用,而我有 Mac/Linux 用户对他们无法使用 ShareX 感到不安,因为它是不适用于他们的平台。

这是发生问题的代码

PostMethod postMethod = new PostMethod(cnf.url);
System.out.println(postMethod.getParams().getParameter("uname"));
postMethod.setRequestEntity(new FileRequestEntity(filetoUpload,filetoUpload.getName()));
postMethod.addParameter("uname",cnf.uname);
postMethod.addParameter("api_key",cnf.api_key);
System.out.println(postMethod.toString());
httpClient.executeMethod(postMethod);
System.out.println("Response String: " + postMethod.getResponseBodyAsstring());

所以希望我能得到答案。它驱使我绕过弯道。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。