标签: coldfusion

计划任务是否以与网页相同的方式加载Application.cfc?

计划任务是否以与网页相同的方式加载Application.cfc?我们有一个每晚运行的任务,需要使用加载到应用程序中的服务cfc.应用程序范围是否与调用标准网页时的方式相同?是否有任何差异或陷阱需要注意?

coldfusion components scheduled-tasks application.cfc

12
推荐指数
1
解决办法
1116
查看次数

Perl/PHP/ColdFusion中的TripleDES

最近出现了一个问题,即使用TripleDES标准将请求字符串加密的支付处理器连接到API以用作令牌.我们的应用程序使用ColdFusion运行,它有一个加密标签 - 支持TripleDES - 但是我们得到的结果并不是支付处理器所期望的.

首先,这是支付处理器所期望的结果令牌.

AYOF+kRtg239Mnyc8QIarw==
Run Code Online (Sandbox Code Playgroud)

下面是我们正在使用的ColdFusion的片段,以及结果字符串.

<!--- Coldfusion Crypt (here be monsters) --->
<cfset theKey="123412341234123412341234">
<cfset theString = "username=test123">
<cfset strEncodedEnc = Encrypt(theString, theKey, "DESEDE", "Base64")>
<!---
 resulting string(strEncodedEnc): tc/Jb7E9w+HpU2Yvn5dA7ILGmyNTQM0h
--->
Run Code Online (Sandbox Code Playgroud)

如您所见,这并没有返回我们希望的字符串.寻求解决方案,我们为此过程抛弃了ColdFusion,并尝试在PHP中重现令牌.

现在我知道各种语言以不同的方式实现加密 - 例如在过去管理C#应用程序和PHP后端之间的加密,我不得不玩填充以使两者交谈,但是我的经验是,PHP在加密标准方面通常表现得很好.

无论如何,我们尝试的PHP源代码和结果字符串.

/* PHP Circus (here be Elephants) */
$theKey="123412341234123412341234";
$theString="username=test123";
$strEncodedEnc=base64_encode(mcrypt_ecb (MCRYPT_3DES, $theKey, $theString, MCRYPT_ENCRYPT));
/*
 resulting string(strEncodedEnc): sfiSu4mVggia8Ysw98x0uw==
*/
Run Code Online (Sandbox Code Playgroud)

正如您可以清楚地看到的那样,我们有另一个字符串,它与支付处理器预期的字符串和ColdFusion生成的字符串不同.提示头对墙集成技术.

经过与支付处理器的多次往复通信(很多代表说"我们无法解决编码问题,你必须做错了,阅读手册")我们最终被升级为超过一对脑细胞在一起摩擦,能够退后一步,实际观察和诊断问题.

他同意,我们的CF和PHP尝试没有产生正确的字符串.经过快速搜索,他还同意这不是我们的来源,而是两种语言如何实现他们对TripleDES标准的看法.

今天早上进入办公室时,我们遇到了一封包含Perl源代码片段的电子邮件.这是他们在最终直接使用的代码,用于生成预期的令牌.

#!/usr/bin/perl
# Perl Crypt Calamity (here be...something)
use strict;
use CGI;
use MIME::Base64;
use Crypt::TripleDES;

my $cgi = CGI->new(); …
Run Code Online (Sandbox Code Playgroud)

php encryption coldfusion perl tripledes

12
推荐指数
2
解决办法
5372
查看次数

使用ColdFusion和Microsoft SQL删除特殊字符的最佳方法?

我想从输入字段中删除所有特殊字符(",/ {}等.)作为字符串保存到数据库中.

什么是最好的方法?

是否应该使用JS,ColdFusion或Microsoft SQL来解决这个问题 - 也许这三个都可以解决?

我将如何使用ColdFusion或Microsoft SQL进行编码?

javascript sql coldfusion

12
推荐指数
2
解决办法
2万
查看次数

映射到ColdFusion中的CFC

在我的应用程序中,我将所有CFC都放在cfc文件夹中.从站点根目录,我可以毫不费力地访问它们,只需在我的<cfinvoke>标签中引用它们即可component=cfc.mycomponent method=mymethod

问题是,当我想从另一个不在根目录中的页面访问cfc时,我无法使用component=../.cfc.mycomponent该cfc与cfc取得联系.

我在这做错了什么?

mapping coldfusion cfc

12
推荐指数
2
解决办法
1万
查看次数

使用Coldfusion实现OAuth 2.0提供程序

我需要使用Coldfusion实现OAuth 2.0 Provider.你知道我可以用的任何图书馆吗?我发现的只有这个,但它基于Core 1.0规范.

你对此有何看法?也许我应该使用Java库?任何帮助将不胜感激.

谢谢,
卢卡斯

coldfusion oauth-2.0

12
推荐指数
1
解决办法
4193
查看次数

在ColdFusion 10中使用CF_SQL_NVARCHAR的详细信息是什么?

有关更新数据库的ColdFusion 10文档有关于ColdFusion 10中与数据库相关的增强功能的部分.那个页面提到现在有支持CF_SQL_NVARCHAR,但没有关于它们的细节.此外,cfqueryparam文档尚未更新以包含它们的存在.

cfqueryparamColdFusion 9文档提到CF_SQL_VARCHAR映射到varcharMSSQL中.除非ColdFusion Administrator 数据源设置String Format启用该设置,否则这是正确的.在哪种情况下CF_SQL_VARCHAR映射到nvarchar.这个记录不完整的功能是一个hack,可能会导致 ColdFusion中的性能问题.

所以他们介绍的很棒CF_SQL_NVARCHAR,但了解它是如何工作的会很好.它只是CF_SQL_VARCHAR使它毫无意义的别名?它总是发送字符串nvarchar吗?如果是这样,CF_SQL_VARCHAR总是发送varchar

我希望为了向后兼容,它实现如下:

如果String Format已启用CF_SQL_VARCHARCF_SQL_NVARCHAR两者都映射到nvarchar.

如果String Format已禁用,则CF_SQL_VARCHAR映射到varcharCF_SQL_NVARCHAR映射到nvarchar.

这意味着任何CF10之前的站点都可以转移到CF10并运行,在CF10之前具有相同的性能考虑因素.

该重写所有查询新的网站,或者网站相匹配CF_SQL_VARCHAR,并CF_SQL_NVARCHAR与数据库设计将无法获得性能损失是不可避免的预CF10.

任何人都可以确认是否是这种情况; 如果有官方的东西更好吗?

coldfusion coldfusion-10

12
推荐指数
1
解决办法
3880
查看次数

为什么ColdFusion纪元时间落后于javascript纪元时间一小时?

我正在编写一个应用程序,我需要使用在Windows Server 2008上运行的ColdFusion 8和客户端使用javascript(在Google Chrome中进行测试)来获取服务器端的纪元时间.问题是ColdFusion生成的纪元时间比javascript生成的纪元时间晚一个小时.我已经验证了客户端和服务器端的日期/时间设置都是正确的.

这就是我用ColdFusion设置时间戳的方法:

<cfset cfEpoch = DateDiff("s", "January 1 1970 00:00", DateConvert("Local2utc", now()))>
Run Code Online (Sandbox Code Playgroud)

这就是我用javascript设置它的方式:

var jsEpoch = Math.round(new Date().getTime()/1000.0);
Run Code Online (Sandbox Code Playgroud)

javascript时代与本网站上的时代相匹配(http://www.epochconverter.com/),因为他们使用了我正在使用的相同方法.ColdFusion时代落后一小时.这是我试图解决这个问题的方法:

<cfset localDate = now()>
<cfset utcDate = DateConvert("Local2utc", localDate)>
<cfset epoch = DateDiff("s", "January 1 1970 00:00", utcDate)>

<cfoutput>
    Local Date: #localDate# <br>
    UTC Date: #utcDate# <br>
    Epoch: #epoch#
</cfoutput>
Run Code Online (Sandbox Code Playgroud)

该代码输出:

Local Date: {ts '2013-04-30 17:44:56'} 
UTC Date: {ts '2013-04-30 21:44:56'} 
Epoch: 1367354696
Run Code Online (Sandbox Code Playgroud)

所以我很茫然.本地日期和UTC日期值都是正确的.似乎唯一的解释是DateDiff()函数不能正常工作,但我已经用其他日期测试了它,它似乎工作正常.我想我可以在它生成的纪元值上添加3600但是我不想在不知道为什么我首先得到一个不正确的值的情况下这样做.有谁看到我在这里失踪了?

javascript coldfusion date epoch coldfusion-8

12
推荐指数
1
解决办法
5063
查看次数

cf10无法将文本添加到HTML Head

我在正在加载的页面上收到以下错误:

coldfusion.runtime.CfErrorWrapper 
Unable to add text to HTML HEAD tag. 
[empty string] 

caused by

Template

Unable to add text to HTML HEAD tag. 
ColdFusion was unable to add the text you specified to the output stream. This is probably because you have already used a CFFLUSH tag in your template or buffered output is turned off.
Run Code Online (Sandbox Code Playgroud)

我已经扫描了我们的应用程序中包含的所有文件,但找不到任何使用CFFlush的文件.

所有cfcs和组件的输出都设置为"no".我也尝试在文件中添加cfsetting showdebugoutput = no.这没有用.

我在cfadmin中打开了请求调试,但没有帮助.

HTML Head在我们的应用程序的其他部分工作正常,它似乎只在这一页上.

这个页面唯一真正不同的是它是一个特别长的页面.

coldfusion coldfusion-10

12
推荐指数
1
解决办法
5991
查看次数

使用CFIMAP预览电子邮件而不标记SEEN标志?

在ColdFusion 9上,我们尝试使用CFIMAP来获取用户电子邮件消息的预览(主题,日期).我们可以使用getHeaderOnly获取数据,但这样做会将SEEN标志设置为yes.

有没有办法使用CFIMAP进行预览而不将其标记为SEEN?

这一般是IMAP的正常功能吗?

coldfusion imap coldfusion-9

12
推荐指数
1
解决办法
258
查看次数

如何让Coldfusion 10在Windows 10中与IIS 10一起使用

Windows 10附带IIS 10,ColdFusion 10似乎不喜欢它.ColdFusion 10安装得很好,但是当需要创建连接器时(无论是在安装过程中还是使用工具C:\ColdFusion10\cfusion\runtime\bin\wsconfig.exe),它都会失败.我得到的错误消息是它不支持IIS 10.

在此输入图像描述

需要此连接器才能在IIS中设置CFIDEjakarta虚拟文件夹.

有什么方法吗?

iis coldfusion coldfusion-10 windows-10

12
推荐指数
1
解决办法
4223
查看次数