gpt4 book ai didi

jquery - 使 .cfm 模板只能通过 ajax 调用访问?

转载 作者:行者123 更新时间:2023-11-30 23:51:03 24 4
gpt4 key购买 nike

我设置了一个模板,我正在通过 jQuery 进行 ajax 调用。我传递一个名为“method”的 URL 参数,然后通过每个方法执行 以确定要执行的代码块。

问题是,我不希望在 ajax 调用之外访问此页面。换句话说,如果有人只是在浏览器中输入 URL,我不希望模板运行。

有办法做到这一点吗?我认为在 .php 中有一种方法可以告诉它是什么类型的请求。 Coldfusion 中存在类似的东西吗?或者有什么建议吗?

最佳答案

jQuery 使用设置了值“XMLHttpRequest”的 X-Requested-With header 注入(inject)请求。在coldfusion中,您可以通过转储HTTP请求来查看:

<cfdump var="#getHTTPRequestData()#">

因此,您需要做的就是测试该 header ,例如:

<cfset reqData = getHTTPRequestData()>
<cfif structKeyExists(reqData.headers,"X-Requested-With") and reqData.headers["X-Requested-With"] eq "XMLHttpRequest">
Got an ajax request
<cfelse>
<!--- do something else, or nothing --->
</cfif>

关于jquery - 使 .cfm 模板只能通过 ajax 调用访问?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1342656/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com