基本上:您不能。
使用HTTP协议,每个请求彼此独立。
第一个想法是检查Referer HTTP标头,但请注意:
- 可以伪造 (由浏览器发送)
- 它并不总是存在。
因此:不是一个可靠的解决方案。
一种可能的方法(比Referer的想法好得多)是使用
nonce :
- 显示表单时,在其中添加一个隐藏的输入字段,其中包含一个随机值
- 同时,将该随机值存储到与用户相对应的会话中。
- 提交表单后,请检查隐藏字段的值是否与会话中存储的值相同。
如果这两个值不相同,请拒绝使用提交的数据。
注意:此想法通常用于帮助对抗 CSRF 并集成在某些框架的“表单”组件中 ( 例如Zend
framework)。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)