我是这一切的初学者,我需要在不使用 ubuntu 中的 sudo
的情况下执行 docker 命令以使用 gcc
编译器。
为了实现这一点,我的一个 friend 用 go lang 编写了一个名为 http-to-shell 的脚本,它是一个在 http://localhost:4000
上作为 http 服务器监听的程序,并在终端上执行命令并将输出作为 json 响应返回给客户端。
我运行命令
sudo go run http-to-shell.go
然后在另一个选项卡上我使用类似
的命令curl -d command=ls http://localhost:4000
如果我使用
这会完美地工作curl --data-urlencode "command@command.txt" http://localhost:4000
它运行 command.txt
中的 docker 命令,并在我运行 sudo
go run 的前一个选项卡上显示程序的输出。
现在,我的主要问题。由于我是初学者,我不知道如何从 localhost:8080 在 ubuntu 中的 jsp 页面运行它。
我一直在尝试,我尝试使用Using curl command in java中的答案 但流程构建器不起作用。 我需要运行此 curl 命令并获取 json 响应以向用户显示其代码的输出。
请帮帮我。
最佳答案
如果您想在代码中使用 json 的结果,那么 curl 可能不是您想要的。然而,如果您想从命令行执行操作,Curl 非常棒,是的,有 Java curl 绑定(bind),但我个人会使用 Apache HttpClient
这是一个使用 HttpClient 进行 REST 调用的示例。 http://www.mkyong.com/webservices/jax-rs/restful-java-client-with-apache-httpclient/
该示例使用 Spring 作为依赖项,我不确定您使用的是什么,因此您可能必须自己下载 jar 并将其放在您的类路径中
关于java - 在 java 中对本地主机执行 curl 命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28265341/