如何使用 ColdFusion 获取 URL?
我尝试了以下但它没有返回命名锚。
例如http://www.makeup.edu/test/#abc
<cfdump var=#cgi#>
你不能,因为虽然它在 URL 中,但它只适用于客户端。它不会被发送到服务器,因此您永远无法在 CGI 范围内找到它。
正如亨利所说,您无法使用 ColdFusion 获取它们,因为它们永远不会随请求一起发送。您需要做的是使用 Javascript(可以访问它们)将它们拉出,然后通过其他机制将它们发送回服务器,例如将它们放入 cookie 或其他东西中。这取决于您如何处理该部分的情况,但无论如何这可能是一个不同的问题。
底线:信息永远不会随请求一起传输,因此 Web 服务器无法获取它,因此 Web 服务器无法将其传递给 ColdFusion,因此 ColdFusion 不会接收到它。
添加一个额外的 url 参数来识别锚点。所以你可以创建链接http://www.makeup.edu/test/?anchor=1#abc
用户单击链接,锚点会转到正确的位置,然后您可以使用:
<cfif ISDEFINED("url.anchor")>
<cfif url.anchor EQ 1>
... do stuff here...
</cfif>
</cfif>