问题标签 [cflocation]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
602 浏览

redirect - 使用 ColdFusion 重定向到 UTF-8 URL

我正在开发一个在 URL 的文件夹名称中使用 UTF-8 字符的系统。导航到这些 URL 没有问题,一切都按预期工作 -除非发出重定向到网站上的另一个页面;于是浏览器似乎对扩展字符进行了编码。

举个例子,我试图重定向到以下相对 URL:

如果我直接在地址栏中访问该 URL,则没有问题。但是,如果我更改位置标头以将浏览器重定向到此 URL,它最终会出现在:

如果我查看原始页面的响应标头(这是对已翻译内容的 301 重定向),我可以看到以下条目:

似乎正确的细节最终出现在标题中,但浏览器的地址栏显示了上面详述的%E4的编码值。我尝试了各种将 URL 输入到位置标头中的方法,但都得到了相同的结果。

我在 Chrome 37.0.2062.120 m 和 Firefox 32.0.2 上看到了这种行为。

这是在开发盒上运行的,Windows 7 Home with IIS7.5

编辑: 看来这个问题可能与 ColdFusion 直接相关。如果我使用 Javascript 重定向到 url,这可行……但需要注意的是,文件必须与 BOM 一起保存。如果我使用cflocation,或者如果我使用 pagecontext 手动插入标题,则无论是否存在 BOM,问题都会持续存在。

我还注意到使用类似的问题,cfinclude除非调用模板与 BOM 一起保存,否则这些扩展字符显示不正确。

0 投票
2 回答
408 浏览

.htaccess - Coldfusion 301 重定向循环(www 和非 www 指向同一个文件)

我到处都在搜索这个,但我能找到的都与 .htaccess 文件有关。我的网站所在的服务器没有使用 Apache,所以我不能使用 .htaccess 文件。

每当人们输入非 www 域时,我都会尝试将他们发送到我网站的 www 版本。因此,如果用户键入domain.com,它会将他们发送到www.domain.com。问题是它们都已经指向同一个coldfusion文件。

我有一个有效的重定向设置,但它是一个 302 重定向:

如果我将 cfset 更改为:

它创建了一个无限重定向循环,我得到一个错误页面。

我需要使用 301 重定向,以便 Google 不会对我的页面进行双重索引并说我有重复的内容,因为它将 www 和非 www 视为两个单独的站点,即使它指向同一个文件。此外,301 重定向会将链接权限从非 www 转移到 www 域。

0 投票
0 回答
132 浏览

coldfusion - 是否可以捕获或阻止 CFLOCATION 请求

我们正在对一个 10 多年前编写的庞大遗留系统进行维护。它都是按程序编写的,没有 OOP 的概念。整个代码中有很多包含和重定向。问题是很难找到特定事件调用给定 cflocation 的位置。

有没有办法阻止所有 cflocations 发生,而是创建一个错误或其他东西,以便我们找到它?我在想有可能在 onRequest 方法中添加一些东西,这可能会捕获一个 cflocation 并阻止它工作。

0 投票
1 回答
167 浏览

coldfusion - Coldfusion cflocation 奇怪的行为

我在我的数据库中存储了一个谷歌评论 URL:

然后在我的应用程序中,我将该 URL 设置为一个变量,并使用 cflocation 将用户重定向到该 URL。

但是,URL 在某些时候会发生更改,因为我认为 Coldfusion 不喜欢 URL 中的字符,它会将它们替换为 % 或删除它们。因此,当用户点击 google 页面时,页面不会按应有的方式处理。

以下是重定向后 URL 的外观:

如何阻止 ColdFusion 更改 URL 并保持 id 与它在数据库中的存储方式完全相同?

更新

所以我发现 URLdecode 会保留字符串。这就是我所拥有的。

输出如下

https://www.google.com/search?CFID=ac59cfdf-bbad-4017-9759-e88054f3f242&CFTOKEN=0&q=njcomputerrepair+brick+nj&oq=njcomp&aqs=chrome.1.69i60j69i59j69i60j69i57j0l2.2762j0j9&sourceid=chrome&ie=UTF-8#lrd=0x89c18348735c2907 :0x59aa614832a36b22,3 ,

为什么要在 URL 中添加 CFID 和 CFTOKEN 呢?我在我的 Application.CFM 中将其关闭:

0 投票
1 回答
711 浏览

coldfusion - ColdFusion cflocation 到新选项卡

如何使用 cflocation 打开新标签?

我提交了一个表单,然后它应该打开一个新选项卡并重定向原始页面。可能吗?

然后在 test.cfm

有可能做到吗?

谢谢

0 投票
1 回答
131 浏览

html - 我如何 CFLOCATE 到分页,而不是除法?

我目前有一个 ColdFusion 页面,左侧有一个列表分区,右侧有一个详细信息分区。当通过单击详细信息侧的按钮添加记录时,我想重建整个页面,以便新记录显示在列表中。我已将 CFLOCATION 设置为转到完整页面(包含两个分区的页面),但我得到的是它在左侧分区中显示原始列表,然后在中显示完整页面(列表和详细信息)正确的划分。我怎样才能让我的 CFLOCATION 标签替换原始页面,而不是试图将它塞进一个部门?这是 CFLOCATION 标签:

0 投票
0 回答
181 浏览

coldfusion - 我可以使用 cflocation 和/或 cfhttp 来模拟带有表单帖子的 javascript 重定向吗?

我有一个项目要求我将登录数据发布到另一个域。表单提交后,在浏览器中设置 cookie 并重定向用户。

我已经能够使用 javascript 完成此操作,如下所示:

如果我使用cfhttp:

响应不包含 cookie,它只是带有元重定向的 HTML,就好像我从他们的页面登录一样。但是没有 cookie 我没有通过身份验证。

有没有办法使用 cfhttp 和/或 cflocation 进行重定向和发布,或者 javascript 是最好的解决方案吗?

0 投票
1 回答
648 浏览

forms - ColdFusion - 表单提交后表单变量为空

我的问题引用了此 stackoverflow 帖子中提供的以下问题/答案:表单变量在表单提交后未显示。冷融合

我想在上面引用的帖子中发表评论,但我没有足够的声望点。我看到上面 Samuel Dealey 的回答表明使用 cflocation 或 location.replace() 可能会导致 Form 变量不显示。这正是我的场景中正在发生的事情。

我有一个简单的注册表单提交。提交表单后,表单数据将发送到名为 addCampaign.cfm 的页面。addCampaign.cfm 包含将注册数据写入数据库的代码。将注册信息写入数据库后,我验证信息已写入数据库。然后,如果注册成功,我将用户重定向到特定页面,如果不成功,则重定向回注册表单页面,并显示适当的错误消息。

我已经尝试将两者都用于重定向,并尝试使用 javascript location.replace(),两者都会导致相同的问题。

我遇到的问题是:

1)重定向永远不会发生

2)我用来显示结构,但它列为空

3)我已经删除了 cflocation 和 location.replace() 并且可以验证我的表单元素确实存在于表单结构中。

4)表单数据正在写入数据库,考虑到表单结构显示为空,这很奇怪。

我不明白为什么将数据写入数据库时​​表单结构为空,而且我不知道为什么重定向不起作用。任何人都可以澄清为什么会发生这种情况吗?

0 投票
0 回答
223 浏览

google-chrome - ColdFusion cflocation 令牌问题 Chrome

我对 cflocation 和 Chrome 有一个奇怪的问题。用户登录后,我的代码中有以下 cflocation。

一切正常 Firefox 和 IE。当我使用 Chrome 运行它时,它会在 URL 中设置 CFID 和 CFToken,并且不会重定向到页面 index.cfm?p=10

如果我设置addToken="true",则重定向有效;但是,每次我单击网站中的某些内容时,它都会返回登录页面(看起来像是踢了会话超时)。

CF 令牌和 Chrome 有什么问题吗?

谢谢

0 投票
1 回答
73 浏览

coldfusion - cflocation 是否调用 onRequest?

我收到错误“transaction_types”未定义,并且无法理解原因。

我有application.cfc:

header.cfm 文件看起来像这样(每个文件都会调用 header,并且根据用户所在的目录有不同的子标题):

我遇到问题的目录有两个文件,index.cfm 和 subheader.cfm

subheader.cfm,第一行

index.cfm 的一部分,我认为问题可能是 cflocation,但我不确定:

我设置页面时认为 transaction_types 将在目录/index.cfm 加载的任何时候定义,因为应用程序文件总是加载 header.cfm 并随后在目录/index.cfm 之前加载目录/subheader.cfm。cflocation 会绕过这个吗?