- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个正在从 CF8 转换为 CF10 的应用程序,而我的一些远程 CFC(返回的数据应该是 JSON)现在失败了,因为似乎有一个“//”前置到返回的数据。例如,这是返回结构的输出:
//{"SUCCESS":true,"ERRORS":[],"DATA":{"COLUMNS":["AUTHRESULT","SPID","EMAIL","RID"],"DATA":[[true,361541,"user@domain.com",""]]}}
在 CF8 服务器上通过相同的 CFC 运行相同的函数会给出:
{"ERRORS":[],"SUCCESS":true,"DATA":{"COLUMNS":["AUTHRESULT","SPID","EMAIL","RID"],"DATA":[[true,361541,"user@domain.com",""]]}}
代理所有请求的 CFC 确实具有 returnFormat="JSON"- 但在 proxyCFC 或从 proxyCFC 扩展的 CFC 中都没有调用 SerializeJSON()。
我不确定处理这个问题的最佳方法是什么。修剪掉响应中的“//”是可能的,但它看起来并不“正确”。我需要在 CF10 端解决这个问题,因为这些函数不仅在我们的应用程序中使用,而且也在一些远程应用程序中使用(有些是通过 http://posts 进行的,有些是通过 jQuery Ajax 调用进行的)。
最佳答案
这是 ColdFusion admin, under settings 中的服务器端设置。 在序列化 JSON 中添加前缀。为了安全起见,它默认启用。 通过使用自定义前缀作为序列化 JSON 字符串的前缀,保护 Web 服务返回 JSON 数据免受跨站点脚本攻击。。也许您已在 ColdFusion 8 服务器上关闭此功能。不过我不建议关闭它。
请参阅 Raymond Camden 的这篇文章 - Handling JSON with prefixes in jQuery and jQueryUI
注意:还可以通过在 Application.cfc 文件中设置 secureJSON
和 secureJSONPrefix
来针对每个应用程序设置此设置。请参阅此处的相关文档 - Application variables .
secureJSON
- 一个 bool 值,指定是否在 ColdFusion 函数以 JSON 格式返回的值前面添加安全前缀以响应远程调用。
默认值是管理员服务器设置 > 设置页面中的前缀序列化 JSON 设置的值(默认为 false)。您可以在 cffunction 标记中覆盖此值。
secureJSONPrefix
- 如果 secureJSON 设置为 true,则放置在 ColdFusion 函数以 JSON 格式返回的值前面以响应远程调用的安全前缀。
默认值是管理员服务器设置 > 设置页面中的前缀序列化 JSON 设置的值(默认为//,JavaScript 注释字符)。
关于json - Coldfusion 10 returnformat ="JSON"添加字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15501123/
我有一个正在从 CF8 转换为 CF10 的应用程序,而我的一些远程 CFC(返回的数据应该是 JSON)现在失败了,因为似乎有一个“//”前置到返回的数据。例如,这是返回结构的输出: //{"SUC
我是一名优秀的程序员,十分优秀!