4

Web 开发新手,我的理解是 GET 用于获取用户输入,而 POST 用于为他们提供输出。如果我有一个混合页面,例如。在 StackOverflow 上,如果我写一个问题,它会发布一个包含我的问题的页面,但也有一个文本框来获取我的答案。在我的路由文件中,与我的 postQgetA() 方法关联的 URL 将指定什么方法 - GET 或 POST?

4

1 回答 1

3

从技术角度来看,您只能使用它GET来执行几乎所有操作,但是......

  • GET是最常用的方法,当你 ie 时使用它。点击链接,获取数据(不要在服务器上修改),可选择发送要获取的资源 id(如果需要获取单个用户的数据)。
  • POST最常用于向new服务器发送数据,即。从form- 将它们存储在您的数据库中(或以任何其他方式处理)

您还可以在 Play 中使用其他请求方法(即DELETE, PUT),但是其中一些需要通过 ie 进行“模拟”。ajax,因为无法设置公共链接的方法,即。到DELETE. 它描述了如何在 Play 中使用非 GET/POST 方法!请注意,Julien 建议在那里使用 GET 进行delete操作,尽管它可能是一个损坏的语义。

StackOverflow 上还有其他讨论,您可以在其中找到为您的路线选择正确方法的示例和建议。

顺便说一句,如果您发送一些请求,假设POST您不需要单独执行GET,因为发送 a会request生成 a response,换句话说,在发送新问题后POST首先您尝试将其保存到数据库,如果没有错误呈现页面并将其发回作为回应。

于 2012-05-27T20:55:21.090 回答