使用curl命令配置java webapp以通过http传输数据

时间:2016-07-20 23:43:21

标签: java tomcat curl

我目前正在tomcat 8上运行一个webapp,并希望在终端屏幕上显示接收某个帖子请求的输出,而不显示网页。作为一个例子,我希望使用类似这样的命令:

curl -d "param1=xxx&param2=yyy" localhost:8080/webapp

并获得与此类似的(简短)回复:

"some data here"

我不想获取在浏览器中点击URL时会呈现的网页的HTML。有什么办法可以在Tomcat中完成吗?

2 个答案:

答案 0 :(得分:2)

AFAIK响应内容由Web应用程序(servlet,JSP或其他)在Tomcat中生成。你可能应该创建这样一个webapp,它只输出一个没有标签和其他html东西的文本,例如。使用此内容在tomcat webapps根目录(通常为 tomcat_root \ webapps \ ROOT )中创建index.jsp文件(是的,只有一个短行):

<%="some data here"%>

您将通过此请求获取原始数据,但这无论如何都是HTTP响应。如果您计划在较低级别处理此数据(例如TCP),您将从服务器额外数据中获取标题值等。

此外,如果您的客户端软件关心它,您可能需要关心如何设置正确的标头作为响应,例如:ContentType: text/plain。或者只是跳过它:无论如何,您将获得原始文本内容,而与内容类型标题值无关。

答案 1 :(得分:0)

您必须指定请求是POST请求

$ curl -i -X POST  -d "param1=xxx&param2=yyy" localhost:8080/webapp