一尘不染

如何防止SerializeJSON将Yes / No / True / False字符串更改为布尔值?

json

我有一个数据结构以JSON格式存储,并使用serializeJSON函数进行了转换。我遇到的问题是在CF中可以是布尔值的字符串(例如Yes,No,True和False)被转换为JSON作为布尔值。下面是示例代码。关于如何防止这种情况的任何想法?

码:

<cfset test = {str='Yes'}>
<cfset json = serializeJSON(test)>
<cfset fromJSON = deserializeJSON(json)>

<cfoutput>
    #test.str#<br>
    #json#<br>
    #fromJSON.str#
</cfoutput>

结果:

Yes
{"STR":true}
YES

阅读 254

收藏
2020-07-27

共1个答案

一尘不染

在字符串中添加一个额外的空格以防止将其转换为布尔值,然后在稍后阶段进行修剪。

2020-07-27