GET 和 POST 的区别

大家好!我叫Hase,今年刚毕业加入开发团队。
今天,我想为编程初学者讲解一下PHP中用于传递信息的“GET”和“POST”的区别。

GET 和 POST 分别是什么?

这指的是将输入表单等数据传输到 Web 服务器时所使用的方法。

获取功能

  • 数据会添加到URL之后并发送。
  • 由于数据写入了 URL,因此其他人可以看到您输入的数据。
  • 由于 URL 中可使用的字符数有限(Internet Explorer 允许 URL 中最多包含 2,048 个字符),因此可以发送的数据量也受到限制。
  • 只能发送文本数据(二进制数据,例如图像数据,无法发送,因为它不能写入 URL)。

示例:http://localhost/sample/confirm.php?name=%E5%B1%B1%E7%94%B0%E5%A4%AA%E9%83%8E&age=22

“?”表示参数的开始。
“&”表示参数分隔符。
“="”表示左侧是GET变量名,右侧是传递的值。
传递的值显示为%E5%B1%B1%E7...,因为日文字符已被转换。(URL中不能使用日文字符。)

帖子功能

  • 数据不会添加到URL中。
  • 由于数据没有写入 URL,因此其他人无法看到。
  • 可以发送的数据量没有限制。
  • 可以发送文本数据和二进制数据。

示例:http://localhost/sample/confirm.php

何时使用 GET 或 POST

如果符合以下任何条件,POST 方法则应使用

当数据量很大时

如前所述,Internet Explorer 对 URL 的长度限制为 2048 个字符。
此外,GET 请求会将数据附加到 URL,从而限制了可发送的数据量。
因此,发送大量数据时,请使用 POST 请求。

发送机密信息时

如果您的数据包含敏感信息,例如电子邮件地址或密码,
使用 GET 请求会将这些信息附加到 URL 之后,使其对其他人可见。
因此,发送机密信息时请使用 POST 请求。

发送二进制数据时

发送二进制数据(例如图像)时,请使用 POST 方法。

结论

如果您想通过 URL 分享数据,并且允许其他人查看这些数据,则可以使用 GET 方法。
但是,如果数据包含个人信息,例如输入表单或产品订单表单中的信息,则应始终使用 POST 方法。
以上就是全部内容。

如果您觉得这篇文章对您有帮助,请点个“赞”!
0
加载中...
0票,平均分:0.00/10
5,044
X Facebook Hatena书签 口袋

这篇文章的作者

关于作者

长谷达也

应届毕业生加入 Beyond Co., Ltd.。

我们开发网络系统(开发基于浏览器的服务和系统,例如网络服务、数字内容和业务管理系统)和游戏 API(开发用于与应用程序游戏通信的程序)。

我们也为 Shopify 开发私有/定制应用程序。

最初在大阪办公室工作,2019 年调到横滨办公室。
爱好:棒球、卡拉OK、动漫。