对 PHP 文件的 AJAX 请求、PHP 文件的安全性和可访问性

疯狂冒险

我有一个小的 AJAX 脚本,它将 GET 变量传递给接收 PHP 文件,我们称之为AJAX_RECEIVER.php.

该文件执行数据库查询,并基于 GETkey-value对返回一个 responseText,然后将其送入 HTML 元素。

我有一些疑问

1) 如何防止有人通过在浏览器的 URL 中键入它来随机访问这个 AJAX_RECEIVER.php 文件?

2) 如何确保只有“有效”登录用户才能从AJAX_RECEIVER.php? 文件

3) 如何使用 POST 将键值对传递给这个 AJAX_RECEIVER.php?

4)我想我可以将会话变量的值设置为表示有效用户已登录的值,并使用 POST 将其传递给 AJAX_RECEIVER.php,它会进行检查并仅在它是有效用户时返回合法的内容,我只是有点不确定这是否是最好的方法……或者还有其他方法吗?

抱歉,如果我的问题听起来有点重复或者可能在其他地方得到了回答,我们将不胜感激。PS 我不想使用 JQUERY(对 Javascript 非常满意,如果我可以用简单的 Javascript 做同样的事情,我不想再花几天时间学习另一件事)

昆汀

如何防止某人通过在浏览器的 URL 中键入它来随机访问此 AJAX_RECEIVER.php 文件?

你不能。

如何确保只有“有效”登录用户才能从 AJAX_RECEIVER.php 获得有意义的响应?

与确保只有有效的登录用户才能从任何其他 PHP 程序获得有意义的响应的方式相同。(据推测,您正在使用某种基于会话的身份验证,请使用它)。

如何使用 POST 将键值对传递给这个 AJAX_RECEIVER.php?

有很多方法。传递一个FormData对象fetch可能是最简单的。

var formData = new FormData(document.querySelector("form"));
fetch('/AJAX_RECEIVER.php', {
  method: 'POST',
  body: formData
});

我想我可以将会话变量的值设置为表示有效用户已登录的值,

这就是大多数登录系统的工作方式

并使用 POST 将其传递给 AJAX_RECEIVER.php

只需继续使用相同的会话 cookie 来传递数据。不要将其复制到发布请求的正文中。这将使伪造登录状态变得容易。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Ajax服务php文件的安全性

来自分类Dev

PHP-访问Web根以外的文件的安全性

来自分类Dev

php 文件中 android volley POST 请求的安全性

来自分类Dev

从jQuery / AJAX请求执行PHP文件

来自分类Dev

如何验证对PHP文件的AJAX请求?

来自分类Dev

检测PHP中来自AJAX请求的文件

来自分类Dev

使用Ajax请求执行PHP文件

来自分类Dev

Ajax请求从php文件获取数据?

来自分类Dev

使用AJAX请求PHP文件数据

来自分类Dev

从jQuery / AJAX请求执行PHP文件

来自分类Dev

使用 ajax 请求调用 .php 文件 - wordpress

来自分类Dev

对PHP文件的AJAX请求,未收到PHP文件

来自分类Dev

允许使用PHP上传大文件(安全性)

来自分类Dev

简单的php包含单个htm文件安全性

来自分类Dev

通过jquery ajax请求访问根目录之外的php文件

来自分类Dev

如何使用jQuery.ajax向文件php发送请求

来自分类Dev

对.php文件的AJAX请求返回空字符串

来自分类Dev

PHP文件将不会加载ajax请求

来自分类Dev

如何知道php文件是否处理ajax请求

来自分类Dev

PHP模块:如何为AJAX请求“连接”文件

来自分类Dev

如何找到哪个文件用php发出了ajax请求

来自分类Dev

AJAX函数可访问PHP文件中的PHP函数

来自分类Dev

Apache:在继续原始文件之前,将PHP脚本用作安全性筛选处理程序

来自分类Dev

PHP:对PHP的AJAX请求

来自分类Dev

使用AJAX打开php文件

来自分类Dev

用Ajax执行php文件

来自分类Dev

使用AJAX打开php文件

来自分类Dev

Ajax刚刚打开PHP文件

来自分类Dev

用Ajax执行php文件