小编Ste*_*eve的帖子

coldfusion - 接收发布的JSON数据并解析它

这是我第一次编写cfc,它将从外部Web服务器捕获JSON数据,这些数据将发布信息.

我正在使用一种新服务,可以设置为通过HTTP POST将我们发送到我指定的URL,以及有关失败事务的信息的JSON数据包.

我想我已经设置了一个具有远程访问权限的CFC来捕获和反序列化JSON数据,然后我们可以采取行动.但是,我无法弄清楚如何在CFC中设置函数来接收数据?

我将URL设置为www.mydomain.com/com/processRemote.cfc?method=catchJSONdata&ReturnFormat=json

为了测试它,我设置了一个应该发布会话数据的简单测试页面:

<cfhttp 
  result="result"
  method="post" 
  url="http://www.mydomain.com/com/processRemote.cfc?method=catchJSONdata&ReturnFormat=json">

    <cfhttpparam type="header" name="content-type" value="application/json"/>
    <cfhttpparam type="body" value="#serializeJSON(session)#"/>
Run Code Online (Sandbox Code Playgroud)

那么我迷失的地方是我在我的cfc中最初存储JSON数据的cfargument名称是什么?我无法控制将发送JSON数据的远程服务.

谢谢,

coldfusion json cfc

8
推荐指数
1
解决办法
8267
查看次数

停止Android连接到某些wifi网络

三星Galaxy S3 - 我们的区域遍布Comcast"热点",需要登录和密码才能访问.看起来我去的每个地方我都在手机上打开浏览器或者去查看电子邮件并获得有线公司wifi网络的登录页面.如果他们将登录设置为wifi连接,但它们允许所有设备连接,然后将登录提示放在网页上,那就没关系了.

因为我确定电信公司宁愿你从别人的网络上下载,所以没有办法阻止Android(我知道),但是应该有一种方法来特定的特定wifi网络,手机应该从不连接 - 从而保持蜂窝连接上的网络连接.

任何可以做到这一点的应用程序?我想也许tasker可以编写脚本来关闭wifi,当它打开并连接到"x"网络,但它是一个很好的有一个只连接到特定网络的应用程序.

android wifi

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

Coldfusion 10 returnformat ="JSON"添加字符

我有一个应用程序,我正在努力从CF8转换为CF10和我的一些远程CFC,其中返回的数据应该是JSON现在失败,因为似乎有一个"//"预先返回数据.例如,这是返回结构的输出:

//{"SUCCESS":true,"ERRORS":[],"DATA":{"COLUMNS":["AUTHRESULT","SPID","EMAIL","RID"],"DATA":[[true,361541,"user@domain.com",""]]}} 
Run Code Online (Sandbox Code Playgroud)

在CF8服务器上运行相同CFC的相同功能给出:

{"ERRORS":[],"SUCCESS":true,"DATA":{"COLUMNS":["AUTHRESULT","SPID","EMAIL","RID"],"DATA":[[true,361541,"user@domain.com",""]]}} 
Run Code Online (Sandbox Code Playgroud)

代理所有请求的CFC确实具有returnFormat ="JSON" - 但是在proxyCFC或从proxyCFC扩展的CFC中没有调用SerializeJSON().

我不确定处理这个问题的最佳方法是什么.在响应中修剪'//'是可能的,但它似乎并不"正确".我需要在CF10结尾处理它,因为这些函数不仅在我们的应用程序中使用,而且还在一些远程应用程序中使用(有些是通过http://帖子,有些是通过jQuery Ajax调用).

coldfusion json coldfusion-10

5
推荐指数
1
解决办法
2124
查看次数

div中包含的div表示一行

我已经尝试了几乎所有垂直对齐的div技巧,我可以找到并仍然没有得到结果.这是一个已建立的响应式框架,因此我将其拆分为一些内联CSS来显示问题.

在此输入图像描述

<div class="row uniform">
  <div style="clear:none;width:25%;float:left;background:#CCC;box-sizing:border-box;">
    box 1<br />
    line 2
  </div>
  <div style="clear:none;width:25%;float:left;background:#a43c69;color:#FFF;box-sizing:border-box;">
    box 2
  </div>
  <div style="clear:none;width:25%;float:left;background:#CCC;box-sizing:border-box;">
    box 3
  </div>
  <div style="clear:none;width:25%;float:left;background:#a43c69;color:#FFF;box-sizing:border-box;">
    box 4
  </div>
</div> 
Run Code Online (Sandbox Code Playgroud)

理想情况下,框2,3和4与框1的高度相同,所有框中的文本在中间垂直对齐.

row.uniform设置了一些边距,填充和基线的默认垂直对齐,但这并没有影响到这里.

css css3

5
推荐指数
1
解决办法
42
查看次数

CF8和AES解密MySQL AES:编码不一样

对于我做错的事情而言,这已经成为一种锻炼,而不是关键任务,但我仍然希望看到我正在犯的错误(简单可能).

我正在使用mysql(5.1.x)AES_ENCRYPT来加密字符串.我正在使用CF的generateSecretKey('AES')来创建一个密钥(我已经在defaul和128和256位长度上尝试过它).

所以让我们说我的代码看起来像这样:

    <cfset key = 'qLHVTZL9zF81kiTnNnK0Vg=='/>
    <cfset strToEncrypt = '4111111111111111'/>
    <cfquery name="i" datasource="#dsn#">
        INSERT INTO table(str) 
            VALUES AES_ENCRYPT(strToEncrypt,'#key#');
    </cfquery>
Run Code Online (Sandbox Code Playgroud)

这可以正常工作,我可以使用SELECT AES_DECRYPT(str,'#key#')AS来选择它...完全没有问题.

我似乎无法做的是让CF使用以下内容解密它:

    <cfquery name="s" datasource="#dsn#">
        SELECT str
          FROM table
    </cfquery>
    <cfoutput>#Decrypt(s.str,key,'AES')#</cfoutput>
Run Code Online (Sandbox Code Playgroud)

要么

    <cfoutput>#Decrypt(toString(s.str),key,'AES')#</cfoutput>
Run Code Online (Sandbox Code Playgroud)

我一直得到"输入和输出编码不一样"(包括toString() - 没有我得到二进制数据错误).db中加密字符串的字段类型是blob.

mysql encryption coldfusion aes coldfusion-8

4
推荐指数
1
解决办法
838
查看次数

CF10将mysql字符串连接为二进制数据

我正在努力将一个站点从CF8转移到CF10,只是遇到了一些我没想到的东西.我的MySQL查询有一个简单的连接,可以将公司ID与公司名称结合起来:

SELECT CONCAT(co_coid, ' - ',co_company) AS IDCONAME
Run Code Online (Sandbox Code Playgroud)

在CF8上,这会返回一个字符串,我可以在cfselect上作为我的显示值.

998 - Company A
999 - Company B
Run Code Online (Sandbox Code Playgroud)

等等

但是,在CF10上,当我转储查询时,它显示为二进制数据,我必须在输出上使用toString().

我知道有些问题需要在返回之前没有的加密数据时使用toString(),但我不确定为什么它在简单的字符串连接上执行此操作.

[更新]可以通过连接字符串或其他服务器范围设置更改吗?我知道我可以在输出中使用toString(),或者在查询中使用CAST(),但服务器范围内的东西是理想的.MySQL服务器是同一台服务器,因此没有版本更改.

mysql sql coldfusion coldfusion-10

4
推荐指数
1
解决办法
626
查看次数

jquery validate - 在验证发生之前替换字段中的逗号

即使使用当前的validate插件,如果要使用min验证,也不能在值中使用逗号.我在几十个月前(11个月)在github上找到修补源.js文件的地方,但它仍未发布.

因此,我没有修改我的源.js文件,而是试图找出如何在验证之前替换逗号.

我试过这样的事情:

$("#amount").blur(function(){
    var val = $(this).val().replace(/\,/g,'');
    $(this).val( val ); 
});
$("#transferForm").validate({
    .......
});
Run Code Online (Sandbox Code Playgroud)

但它首先运行验证,因为min而失败,然后替换该值.我不一定希望它失败验证并告诉用户删除逗号 - 我只是希望它在运行min规则之前删除逗号.

jquery jquery-validate

4
推荐指数
1
解决办法
1705
查看次数

Coldfusion 10计划的任务时间为每15分钟一次,但仅限于周二

尝试在CF10(标准)中设置计划任务,每15分钟运行一次,但仅在星期二运行.创建一个cron表示这可以完成这项工作:

*/15 * * * 2
Run Code Online (Sandbox Code Playgroud)

但是这给出了错误"调度任务时出错.意外结束表达式." 我也试过了

15 * * * 2
Run Code Online (Sandbox Code Playgroud)

笔记说6或7个空格分隔的字段 - 我错过了什么?分钟,小时,月,日,星期几是5个字段.

coldfusion coldfusion-10

4
推荐指数
1
解决办法
1758
查看次数

在MS Word中单击的链接丢失CF会话变量,但复制和粘贴工作正常

一直试图弄清楚这一小时,我受到了阻碍.简单的网站,允许员工注册.通常,雇主有一个公司范围的u/p供所有员工用来访问注册页面,但是客户还想要一种方法来为员工提供自动登录的链接以进行注册.

足够简单 - 创建了一个页面"r.cfm",它查找URL.emid(加密的雇主ID)和URL.h(基于解密的雇主ID的5个字符散列作为检查).完整的URL可能如下所示:

https://www.domain.com/r.cfm?emid=22EBCA&h=F5DEA
Run Code Online (Sandbox Code Playgroud)

r.cfm确保存在正确的URL变量,解密emid,比较检查值,如果一切正确,则设置一些会话变量:

<cflock scope="session" type="exclusive" timeout="10">
 <cfset SESSION.LOGGEDIN = TRUE/>
 <cfset SESSION.LOGIN.EMPLOYEE.COID = DecryptString(url.emid)/>
</cflock>
Run Code Online (Sandbox Code Playgroud)

我认为使用CFHEADER 302和CFHEADER位置将它们发送到下一页.这就是它变得奇怪的地方.在下一页,我设置了一些测试代码,通过电子邮件向我发送会话转储.

如果直接在MS Word中单击,我会进入第二页(cfheader重定向 - employeeRegister.cfm中的那一页),我得到的不是一个 - 而是会话的两个电子邮件转储.第一个显示登录为true,但第二个显示为false,具有不同的jsessionid.

如果我使用完全相同的链接,将其粘贴到我的浏览器中,它会按预期工作 - 一个带有会话转储的电子邮件,显示session.logged为true.

employeeRegister.cfm上没有任何内容可以启动页面重新加载.它实际上甚至没有检查session.log in var直到下一页.employeeRegister.cfm只是条款和条件以及转到下一页的提交按钮,这是读取和检查会话变量的地方.它实际上是带文本的div,然后是带有接受/拒绝的表单标签.

coldfusion coldfusion-8

3
推荐指数
1
解决办法
310
查看次数

来自使用cfscript创建的查询的cfoutput

我试图赶上cfscript语法,迟到了.我在cfscript中创建了一个简单的查询,它可以很好地执行和转储正确的数据:

qPositive = new Query(datasource="#APPLICATION.DSN#");
qPositive.setSQL(" my sql here ");
qPositive.addParam(name="xid",value="178",CFSQLTYPE="CF_SQL_INT");
qryPositive = qPositive.execute();  
writeDump(qryPositive.getResult());
Run Code Online (Sandbox Code Playgroud)

给我准确的预期.但是,在实际页面中

<cfoutput query="qryPositive">
Run Code Online (Sandbox Code Playgroud)

抛出一个未定义的错误.

coldfusion cfml

3
推荐指数
1
解决办法
133
查看次数