为什么在Google App Engine中使用HttpMethod.POST而不是HttpMethod.GET?

时间:2014-12-19 21:45:38

标签: java android json google-app-engine google-cloud-platform

Udacity Developing Scalable Apps with Java course中,后端应用程序的一些API方法(概念上应该是HttpMethod.GET)是使用HttpMethod.POST实现的。

以下注释位于Java文档中:

/**
 * Normally this kind of method is supposed to get invoked by a GET HTTP
 * method, but we do it with POST, in order to receive conferenceQueryForm
 * Object via the POST body.
 */

这是否意味着,即使通过HTTPS连接,如果我们使用HttpMethod.GET,JSON表单也会以纯文本格式发送(即未加密)?

1 个答案:

答案 0 :(得分:2)

没有。这意味着该方法(无论它是什么)用于从服务器检索数据以响应来自客户端的请求。通常,当客户端只是要求某些东西时,它应该使用HTTP GET。 HTTP POST请求用于将数据发送到服务器。

但是,在这种情况下,客户端希望将(可能很大的)对象(称为conferenceQueryForm)发送到服务器以描述它想要的内容。使用GET请求可能太大或太麻烦,所以他们使用了POST。