内容字号:默认大号超大号

段落设置:段首缩进取消段首缩进

字体设置:切换到微软雅黑切换到宋体

天翼云_家装网站建设_多少钱

2021-07-12 04:07 出处:欧普曼云计算 人气: 评论(0

天翼云_家装网站建设_多少钱

阅读本博客后,您将能够解决在CAP项目中使用odatav2外部web服务时出现的日期格式序列化问题。该解决方案是通用的,网购返利,适用于Date或DateTime(Offset)类型的所有属性,无论属性的名称如何。

如果您是CAP中远程服务的新手,我建议您阅读Jhodel Cailan的这一优秀博客系列或DJ Adams的handsonsapdev第72集。

以最简单的形式,您可以在cap项目中使用外部服务,并将传入的OData查询转发到远程服务:

在OData v4旁边,云服务器购买,cds还支持OData v2提供外部服务。我很快就明白了混合使用这两个版本不是即插即用的。我在CAP项目中的SuccessFactors中为用户实体实现了一个外部服务,当我第一次注意到序列化问题时,

我必须研究OData版本之间的具体差异,以了解下一步要做什么。odatav2将其日期格式化为类似JavaScript的epoch格式,而odatav4将日期格式化为ISO-8601标准(YYYY-MM)-直径:mm:不锈钢sssZ).

目前,cds不负责v2和v4日期格式之间的转换。Olena Timrova已经通知我,自动转换已经在路线图上了,但不知道何时实现。

为了解决这个问题,网站云服务器,我必须确保在读取数据时返回OData v4兼容的值,并在向外部OData v2服务写回更改时提供OData v2日期格式。我提出了以下通用方法,可用于任何实体。

读取

实体中的所有实体或entityset I循环其所有属性。任何与OData v2日期(时间)值的格式匹配的属性值都会被识别,然后我会检查已定义的CSN类型并决定需要哪种转换。

对于转换,我使用JavaScript eval语句,该语句将获取任何字符串并将其作为JavaScript代码执行。必须非常小心,因为这可能是一个安全漏洞,但是因为我事先检查了严格的JavaScript epoch-Date语法,所以我不认为这可以被利用(如果你不这么认为,构建云服务器,企业大数据,请在注释中告诉我)。

为实体中的所有类型的条目编写

CD.日期或者cds.DateTime文件我将数据转换为"/日期()/"格式,然后提交给odatav2服务。

我展示的解决方案将用于创建、读取和更新。对于date或datetime类型的属性,还需要其他自定义逻辑来支持$filter。在将来,odatav2和v4之间的日期格式转换的自定义逻辑将被淘汰(一旦cds自己处理掉)。在此之前,可以使用本文中所示的自定义实现在服务实现级别上解决这个问题。

分享给小伙伴们:
本文标签: 天翼家装网站建设少钱

相关文章

评论

发表评论愿您的每句评论,都能给大家的生活添色彩,带来共鸣,带来思索,带来快乐。

签名: 验证码: 点击我更换图片

评论列表