有没有办法确保PHP只由JS加载?

有没有办法确保PHP只由JS加载?,php,javascript,Php,Javascript,有没有办法制作一个PHP文件,这样它就只能由我编写的Javascript代码加载和执行?也就是说,我能确保有人不能阅读我的JS,不能在浏览器中加载带有自己变量的PHP页面,不能对我的数据库进行未经授权的更改吗? 非常感谢您的帮助 有没有办法制作一个PHP文件,这样它就只能由我编写的Javascript代码加载和执行 不可靠,不。任何请求都可以在客户端伪造。此方法不可用于建立安全性。您必须在服务器端使用某种身份验证 有没有办法制作一个PHP文件,这样它就只能由我编写的Javascript代码加载和

有没有办法制作一个PHP文件,这样它就只能由我编写的Javascript代码加载和执行?也就是说,我能确保有人不能阅读我的JS,不能在浏览器中加载带有自己变量的PHP页面,不能对我的数据库进行未经授权的更改吗? 非常感谢您的帮助

有没有办法制作一个PHP文件,这样它就只能由我编写的Javascript代码加载和执行

不可靠,不。任何请求都可以在客户端伪造。此方法不可用于建立安全性。您必须在服务器端使用某种身份验证

有没有办法制作一个PHP文件,这样它就只能由我编写的Javascript代码加载和执行


不可靠,不。任何请求都可以在客户端伪造。此方法不可用于建立安全性。您必须在服务器端使用某种身份验证

不是。用Python编写一个10行程序来欺骗任何用户代理都很简单。在任何情况下,您都不能信任任何用户发送给您的任何内容


这样做会给你的整个家庭、你所有的祖先带来耻辱,并导致你的后代永远被污名为“那个家伙”的后代。

不。用Python等语言编写一个10行程序来欺骗任何用户代理都很简单。在任何情况下,您都不能信任任何用户发送给您的任何内容

这样做会给你的整个家庭,你所有的祖先带来耻辱,并导致你的后代永远被污名为“那个家伙”的后代

您可以检查
$\u服务器['HTTP\u X\u REQUESTED\u WITH']
是否已设置并等于“XMLHttpRequest”,但这只是一个可以伪造的HTTP头

Javascript只是发出标准的HTTP请求,这些请求可以以多种方式复制。HTTP是一个非常简单的协议,它不提供以任何可靠方式区分客户端的可能性。相同的请求是相同的。您需要自己在HTTP之上构建用户标识和授权方案,它不是协议的一部分。服务器需要根据规则(由您制定)来决定和强制执行哪些是授权的,哪些不是,而不是谁要求的。

您可以检查
$\u服务器['HTTP\u X\u REQUESTED\u WITH']
是否已设置并等于“XMLHttpRequest”,但这只是一个可以伪造的HTTP头


Javascript只是发出标准的HTTP请求,这些请求可以以多种方式复制。HTTP是一个非常简单的协议,它不提供以任何可靠方式区分客户端的可能性。相同的请求是相同的。您需要自己在HTTP之上构建用户标识和授权方案,它不是协议的一部分。服务器需要根据规则(您建立的规则)来决定和强制执行哪些是授权的,哪些不是。而不是根据谁发出的请求。

也许您可以检查Javascript发送的请求头。AJAX调用应发送以下命令行:

X-Requested-With: XMLHttpRequest

也许您可以检查Javascript发送的请求头。AJAX调用应发送以下命令行:

X-Requested-With: XMLHttpRequest

默认情况下,JavaScript不发送此头,只有某些JavaScript库/框架在其Ajax实现中发送此头。而且它不安全,-1。OP明确提到出于安全目的使用此文件。默认情况下,JavaScript不会发送此头文件,只有某些JavaScript库/框架在其Ajax实现中才会发送此头文件。而且它不安全,-1。OP明确提到为了安全目的使用它,这是非常重要的。您是否碰巧可以指出一些东西来告诉我如何构建一个安全的JS/PHP请求和响应模型?@dshipper如果它是一个“公共API”,就没有真正的方法来保护它。如果您需要用户登录并使用会话cookie(每个AJAX请求都会发送这些cookie),那么您可以使用它来识别某个用户,并决定该用户是否有权执行某些操作。无用户=所有请求的一条安全规则=无授权。最好打开一个关于你的情况的更多细节的新问题,以获得更多建议。非常感谢。您是否碰巧可以指出一些东西来告诉我如何构建一个安全的JS/PHP请求和响应模型?@dshipper如果它是一个“公共API”,就没有真正的方法来保护它。如果您需要用户登录并使用会话cookie(每个AJAX请求都会发送这些cookie),那么您可以使用它来识别某个用户,并决定该用户是否有权执行某些操作。无用户=所有请求的一条安全规则=无授权。最好打开一个关于你的情况的更多细节的新问题,以获得更多的建议。