关于GET和POST的区别
很高兴见到你!我叫Hase,是今年应届毕业生加入开发团队的。
这次,我想为初学者解释一下PHP中传递信息时使用的“GET”和“POST”之间的区别。
什么是 GET 和 POST?
这是指将输入表单等数据传递到 Web 服务器时使用的方法。
GET的特点
- 在 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 中可使用的最大字符数为 2,048 个字符,而
在 GET 情况下,数据会添加到 URL 后发送,这限制了可发送的数据量。
因此,如果数据量较大,请使用POST。
发送机密信息时
如果数据中存在您不希望外人知道的信息,例如电子邮件地址或密码,
如果您使用 GET,则数据信息将添加在 URL 后面,使其对其他人可见。
因此,发送机密信息时请使用POST。
发送二进制数据时
发送图像等二进制数据时请使用POST。
在最后
如果您想通过 URL 共享数据,并且不介意其他人看到数据,则可以使用 GET。
但是,如果您的表单包含个人信息,例如个人信息输入表单或产品订单表单,请务必使用 POST。
就是这样。
如果您觉得这篇文章有帮助,请点赞!