gpt4 book ai didi

java - curl POST 不适用于 Java 代码。从 shell 工作正常

转载 作者:行者123 更新时间:2023-11-30 10:57:38 24 4
gpt4 key购买 nike

我正在尝试使用 Runtime.getRuntime().exec() 从 Java 代码执行 curl。下面是在 exec() 中传递的确切行。

"curl -X POST -u 'username@xyz.com:password' -F 'filename=app.apk' -F 'file=@/Users/wbz587/Documents/Projects/Frameworks/Test/build/app.apk' 'https://cloud.link/services/repositories/media/PUBLIC:app.apk?operation=upload&user=username@xyz.com&password=password'"

这是从 Java 执行的。我没有收到任何错误,但是文件没有上传。同样的工作就像我的 shell 的魅力一样。文件上传没有任何问题。经过广泛搜索后无法解决问题。感谢有人可以提供帮助。

我正在使用下面的 Java 代码从我的程序中运行它。

 String command = "curl -X POST -u 'username@xyz.com:password' -F 'filename=app.apk' -F 'file=@/Users/wbz587/Documents/Projects/Frameworks/Test/build/app.apk' 'https://cloud.link/services/repositories/media/PUBLIC:app.apk?operation=upload&user=username@xyz.com&password=password'";

Process upload = Runtime.getRuntime().exec(command);
upload.waitFor();

最佳答案

好的,所以我能够解决这个问题。我仍然不知道出了什么问题。我删除了“-X POST”和第一个仅包含文件名的 -F。

但是我认为我所做的真正改变是从命令中删除所有那些单引号 (')。现在,我的命令在 Shell 中停止工作,并开始抛出错误“未提供用户”,令我非常惊讶的是,当我从 Java 代码运行它时,相同的命令开始工作(就像我在上面的代码中显示的那样)。

关于java - curl POST 不适用于 Java 代码。从 shell 工作正常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32531663/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com