参考我的另一个问题:模块化站点中的上下文感知 AJAX 调用,是否可以以方便的方式设置 AJAX 代理?
我希望使用动态 url 发出 AJAX 请求,而不用服务器端 PHP 指令污染 JavaScript 代码,在模块化 Apache/PHP/MySQL 站点中计算 ajax php 文件的正确路径,这是我编写的粗略 CMS。换句话说,该站点有插件和组件,它们具有自己的文件夹结构,其中包含它们的 CSS、JS 和 PHP,并且我具有动态检索它们的文件夹的功能。我希望:
$("#mydiv").load(siteRoot + "/ajax.php?plugin=datagrid&
action=myaction&... other params...");
将改为调用(使用 PHP 在服务器端计算的 URL):
{siteRoot}/components/datagrid/ajax/myaction.php?... other params ...
(显然,对注入、CSRF 和其他黑客进行了所有可能的检查)。