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 (将#修改为@)

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...