一尘不染

在PHP中检测Ajax并确保请求来自我自己的网站

php

我使用PHP后端通过检查中的值来检测AJAX请求$_SERVER['HTTP_X_REQUESTED_WITH']

这给了我一个可靠的检测,确保使用AJAX技术发出请求。

如何确保请求来自我自己的域,而不是外部域/机器人?

www.example.com/ajax?true可能允许任何人进行AJAX呼叫并削减信息。

我可以为通常进入我的网站的每个人进行会话,然后允许AJAX调用..但是也可以伪造。

这些天都重要吗?


阅读 260

收藏
2020-05-29

共1个答案

一尘不染

让你控制

  • 生成访问令牌
  • 储存在会话中以供以后比较

在您看来

  • 将访问令牌声明为JS变量
  • 随每个请求发送令牌

回到你的控制器

  • 验证HTTP_X_REQUESTED_WITH
  • 验证令牌

查看来自OpenAjax的这些安全准则
另外,请阅读位于encodinghorror.com Annie链接上的文章。

2020-05-29