Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/448.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Cloudflare停止javascript向外部文件传递变量_Javascript_Php_Cloudflare - Fatal编程技术网

Cloudflare停止javascript向外部文件传递变量

Cloudflare停止javascript向外部文件传递变量,javascript,php,cloudflare,Javascript,Php,Cloudflare,我在cloudflare帐户中启用了Rocketloader,所以这可能是问题所在,但我如何解决它呢 情况是我有一个外部文件login.js,它处理整个站点的登录表单,但是当用户在未登录时访问页面时,请求的url会附加到登录页面。未登录时访问foo.com/secure/page26的示例会导致指向foo.com/login.php?back=secure/page26。因此,在我的登录页面中,我有以下设置: <script>var BackURL="secure/page26";&

我在cloudflare帐户中启用了Rocketloader,所以这可能是问题所在,但我如何解决它呢

情况是我有一个外部文件
login.js
,它处理整个站点的登录表单,但是当用户在未登录时访问页面时,请求的url会附加到登录页面。未登录时访问
foo.com/secure/page26
的示例会导致指向
foo.com/login.php?back=secure/page26
。因此,在我的登录页面中,我有以下设置:

<script>var BackURL="secure/page26";</script>
<script src="login.js"></script>

但这不起作用,我想这是由于Rocketloader,但我如何才能避免这种情况?

您可以将BackUrl参数存储在cookie中,并在每次登录时检查cookie是否存在。如果定义了它,则删除它并将用户重定向到它的值。

“但这不起作用,我想这是由于Rocketloader,但我如何才能绕过它?”


检查这一点的简单方法是在设置中禁用Rocket Loader,然后再试一次(完成后可能需要刷新浏览器缓存)。您也可以完全在设置中暂停CloudFlare,以查看行为是否发生变化)。

我试图避免在本项目中过度使用cookie(即仅为登录用户存储会话cookie),我应该提到这一点。无论您采取何种方法,您当前的cloudflare缓存策略具有足够的攻击性,足以消除查询字符串。也许您可以尝试将缓存策略降低到下一步。我正在直接子域上测试该站点,完全使用cloudflare,但这仍然不起作用。
** SUCCESFULLY LOGGED IN SCRIPT HERE **
window.location.href = "/"+BackURL;