Coldfusion cfscript中的cflogin

Coldfusion cfscript中的cflogin,coldfusion,cflogin,Coldfusion,Cflogin,我正在尝试学习新的cfscript语法,以及使用cflogin。 我猜我不能在cfscript中混合使用cf标记,而且我没有看到与cflogin、cflogout、cflogin等效的脚本 为了使用cflogin,我应该调用以CF8语法编写的组件吗 public void function onRequest(required string Page) output="true" { if (StructKeyExists(url,"logout")) { <cflogout> }

我正在尝试学习新的cfscript语法,以及使用cflogin。 我猜我不能在cfscript中混合使用cf标记,而且我没有看到与cflogin、cflogout、cflogin等效的脚本

为了使用cflogin,我应该调用以CF8语法编写的组件吗

public void function onRequest(required string Page) output="true" {
if (StructKeyExists(url,"logout")) {
 <cflogout>
}
<cflogin>
 local.qryUsr = new Components.Usr.Login(form);
 if (local.qryUsr.Recordcount) {
  <cfloginuser name="#form.UsrName#" password="#form.UsrPassword#" roles="#local.qryUsr.Roles#">
 } else {
  request.errorMessage = "Incorrect login";
  include login/login.cfm;
  return;
 }
</cflogin>
include arguments.Page;
}
public void函数onRequest(必需的字符串页)output=“true”{
如果(StructKeyExists(url,“注销”)){
}
local.qryUsr=新组件.Usr.Login(表单);
if(local.qryUsr.Recordcount){
}否则{
request.errorMessage=“登录不正确”;
包括login/login.cfm;
返回;
}
包括参数;
}

您不能直接混合使用标记和脚本。但是,您可以通过在标记周围编写函数包装来伪造它:

<cffunction name="logout">
   <cflogout />
</cffunction>
显然,这是一个微不足道的例子。您希望在实际代码中指定参数、返回值等

注意一:不要对接受用户输入的通用查询函数执行此操作,因为您将无法使用cfqueryparam


注二:我通常不会这样做。如果我正在编写依赖于仅标记操作的代码,我将使用标记语法

不能直接混合使用标记和脚本。但是,您可以通过在标记周围编写函数包装来伪造它:

<cffunction name="logout">
   <cflogout />
</cffunction>
显然,这是一个微不足道的例子。您希望在实际代码中指定参数、返回值等

注意一:不要对接受用户输入的通用查询函数执行此操作,因为您将无法使用cfqueryparam


注二:我通常不会这样做。如果我正在编写依赖于仅标记操作的代码,我将使用标记语法

作为旁注,在为所有CF标记创建函数方面,有一项小小的工作正在进行中。
查看更多详细信息

作为旁注,在为所有CF标记创建函数方面有一点小小的努力。
查看更多详细信息

哦,好的。谢谢我想我会放弃使用cflogin(仍然),而只是使用一个会话变量来查看它们是否已登录。您可以重写它们并将它们放入库中,或者使用cflib.org中的库,并简单地包含它们。然后,你可以在任何地方给他们打电话。如果这是您的具体目标,那么您可以使用cflogin。哦,好的。谢谢我想我会放弃使用cflogin(仍然),而只是使用一个会话变量来查看它们是否已登录。您可以重写它们并将它们放入库中,或者使用cflib.org中的库,并简单地包含它们。然后,你可以在任何地方给他们打电话。如果这是您的特定目标,那么您可以使用cflogin。cflib.org很有趣。任何时候我都可以查看源代码,我很感激!我想a必须作为一个自定义标记来编写。Phillip——这些被重写为函数,与自定义标记不同。对。我想我认为“自定义标记”是因为cflogin有一个开始和结束标记。cflib.org很有趣。任何时候我都可以查看源代码,我很感激!我想a必须作为一个自定义标记来编写。Phillip——这些被重写为函数,与自定义标记不同。对。我想我之所以想到“自定义标记”,是因为cflogin有一个开始和结束标记。我认为这个问题需要在cf9语法的上下文中重新讨论。既然我们应该能够使用脚本语法从上到下编写组件,那么在脚本中有没有办法做到这一点呢?我认为这个问题需要在cf9语法的上下文中重新讨论。现在我们应该能够使用脚本语法自上而下地编写组件了,在脚本中有没有一种方法可以做到这一点?