- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
一些 JSON 序列化器返回 null
对于空字符串数据字段,例如
{
"searchtext": null,
"moretext": "contains something",
"bookdate": 1377468000000,
"empid": 12345,
"listtype": 1
}
我正在使用 SuperObject 创建 ISuperObject:
var
FJSONRequest: ISuperObject;
then
FJSONRequest := SO(Request.Content); // Webservice request
这将返回一个对象,该对象的字符串包含文本 'null'
.
显然这是因为 SuperObject 不关心引号( "searchtext": a
给出与 "searchtext": "a"
相同的结果)。
在我深入研究 980 行分词器例程之前,有人有解决方案吗?
我正在思考(要么/或):
将空数据字段保留在 JSON 对象之外
返回空字符串
如果一切都失败了,我仍然可以做
FJSONRequest := SO(StringReplace(Request.Content,': null,',':,',[rfReplaceAll]));
因为我只需要处理来 self 们一位开发人员的应用程序的请求,但这并不是万无一失的。
(不,他无法抑制 null
因为 there's a bug in the way Mono handles his datacontract 。)
顺便说一句,我正在经历the behaviour mentioned here ,但在 SuperObject 代码的另一部分中,因此该解决方法不起作用。
最佳答案
下载部分的官方1.2.4 ZIP文件http://code.google.com/p/superobject/downloads/list日期为 2010 年,但 http://code.google.com/p/superobject/source/browse 中的各个文件截至 2012 年 10 月都有更新。
如果您转到最后一个 URL 并单击下载 zip
,您就可以检索它们。
这些更新的文件允许您使用特殊情况 null
。
如果省略字符串值周围的引号,代码仍然是“宽容的”:
{
"bookdate": 1377554400000,
"searchtext": a,
"listtype": 1
}
但它现在可以处理特殊情况
{
"bookdate": 1377554400000,
"searchtext": null,
"listtype": 1
}
好像是这样
{
"bookdate": 1377554400000,
"searchtext": ,
"listtype": 1
}
或
{
"bookdate": 1377554400000,
"listtype": 1
}
[不要意外输入 nil
或 NULL
]
此版本支持 VER230 (Delphi XE2) [请注意,“官方”1.2.4 甚至无法在更新的 Delphi 版本上编译],因此对于更高版本的 Delphi,您必须修补编译器指令。
它还修复了以下问题:
当浮点值碰巧具有精确的整数值时,JSON 将具有尾随句点:
{“浮点值”:4。}
此问题现已修复:
{“浮点值”:4}
在闰年切换到夏令时时发生日期时间转换错误 - 是的,晦涩难懂。{$IFDEF WINDOWSNT_COMPATIBILITY}
请注意,这仍然是默认定义的,我建议您禁用该定义,例如与 {.$IFDEF WINDOWSNT_COMPATIBILITY}
[现在谁需要在 Windows NT 上运行?],它让操作系统处理日期时间转换:
{$ELSE}
function TzSpecificLocalTimeToSystemTime(
lpTimeZoneInformation: PTimeZoneInformation;
lpLocalTime, lpUniversalTime: PSystemTime): BOOL; stdcall; external 'kernel32.dll';
function SystemTimeToTzSpecificLocalTime(
lpTimeZoneInformation: PTimeZoneInformation;
lpUniversalTime, lpLocalTime: PSystemTime): BOOL; stdcall; external 'kernel32.dll';
{$ENDIF}
关于delphi - SuperObject 无法处理空字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18445280/
我正在尝试用 Java 构建一个字符串,该字符串的长度最多为 3,最少为 1。 我正在根据整数数组的内容构建字符串,如果数组的内容为 -1,我想在字符串中输出一个空字符。否则字符串将包含整数的字符版本
我有一个类,其中有一个方法可以在字符串中包含 NUL 字符的情况下终止程序。具体表达是这样的: stringVar.indexOf('\u0000') < 0 这个字符串是通过 Scanner 从用户
我有一个 wchar_t 数组。我需要在数组中的特定位置添加一个 unicode 空字符。 wchar_t var1[100]; var1[79] = '\u0000'; 我尝试了上面的方法,但出现以
好吧,这听起来可能是重复的,但我已经尝试了所有可能性,例如 str.strip()、str.rstrip()、str.splitline (),还 if-else 检查像: if str is not
System.out.println("-----------------------------------------------------------"); System.out.pr
我有一个奇怪的问题。我从公司内部的许多不同应用程序接收数据,并将这些数据显示在网站上。根据发送数据的系统,数据本身可能在字符串中包含一些奇怪的字符。我的问题是我有一个用户可以搜索以允许其中包含此数据的
我遇到了 aSSL ,这似乎有几年历史了,想知道是否有人有其他“安全”AJAX 连接代码示例?显然,这不如使用 SSL 证书安全,但使用 null character SSL在那里进行攻击(最近针对
我有一个类似于以下内容的 pyspark 数据框: df = sql_context.createDataFrame([ Row(a=3, b=[4,5,6],c=[10,11,12], d='b
我有以下要执行的查询: MyModel.objects.annotate(current_name=Coalesce('nickname', 'name')).order_by('current_na
每当 rails 变量等于 nil(或者实际上每当我使用 rails 代码(参见第 3 个代码示例))时,我的 html 中就会得到一串空字符。 new.html.haml %h1.editable.
我是一名优秀的程序员,十分优秀!