问题标签 [mormot]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
delphi - 如何从 SynCrypto 中选择 AES 加密版本?
SynCrypto 是这个包中包含的用于数据加密的开源库。
在本单元 (SynCrypto.pas) 中,文件开头有以下注释:
AES128 cypher 84 MB/s uncypher 81 MB/s asm 版本
AES128 cypher 57 MB/s uncypher 57 MB/s pascal 版本
AES192 cypher 72 MB/s uncypher 70 MB/s asm 版本
AES192 cypher 48 MB/s uncypher 48 MB/s pascal 版本
AES256 密码 62 MB/s uncypher 61 MB/s asm 版本
AES256 密码 42 MB/s uncypher 42 MB/s 帕斯卡版本
据我了解,这是两个版本的代码:pascal-slower 和 asm-faster。但问题是,我该如何在这两者之间进行选择?
编辑:还有一个第二个问题,如果你允许的话:我如何选择密钥的位宽:128、192 和 256?
我使用这段代码来加密和解密:
...和德尔福 2009。
json - 如何使用 Delphi 和 Mormot 库手动创建 JSON?
我想手动生成 JSON 来表示复杂对象(没有任何 RTTI 等)。
这可以使用 Mormot(以及如何)完成吗?
我找到了 JSON Variant 类型,但它似乎不能像这里那样生成复杂的 JSON: Generate JSON array with LKJSON in Delphi 7
当然我可以像使用 lkJSON 一样,但由于我的项目已经使用了 Mormot,我更愿意使用已经在使用的库。
delphi - 使用 mormot 自动将 TObject 序列化为 JSON
我正在尝试使用 mORMot 框架将 TObject 序列化为 JSON。不幸的是,结果始终为空。
我要序列化的类是:
SynCommons中定义了对应的mORMot方法:
这总是返回 null。在单步执行后TTextWriter.WriteObject
(位于 unit 中SynCommons
),以下代码似乎是将生成的 json 设置为 null 的位置:
我期待着这样的事情:
delphi - How to serializing a generic TList to JSON using mormot
I want to serialize a generic TList
to JSON using the mORMot framework.
I know there is a TDynList
which has a convenient method called SaveToJSON
, but it not suit for me.
This is my simple demo:
How to convert Rows
to a JSON string? I'm not using TDynList because it could only hold of records, but not Variant.
Any help would be greatly appreciated, thanks.
delphi - 使用 dmustache 进行条件渲染
我正在使用 dmustache ( https://github.com/synopse/dmustache ) 来呈现一些模板。我想知道如果字符串变量是空字符串,怎么不能渲染某个部分。
这个简化的程序呈现FirstName: Joe MiddleName: LastName: Doe
,但我想拥有FirstName: Joe LastName: Doe
,因为没有 MiddleName (只有在这种情况下)。
使用模板中的部分不会改变结果
delphi - 更改变体属性名称 (Delphi)
我正在为 Delphi 学习一个很棒的框架 mORMot,并且我发现了很多有用的函数可以处理Variant
(在 SynCommons 中)。
现在我想更改 a 的一些属性名称Variant
,但搜索后我没有找到这样的功能,所以我决定写一个:
VariantChangeNames
我写的可能不是很有效,因为它需要同时做delete
和add
。似乎直接修改VName
成员TDocVariantData
是最有效的方法,但它是一个私有成员。
有什么建议吗?提前致谢。
BTW:mORMot官方论坛的邮件服务器好像有问题,我发帖的时候显示:
json - 就性能而言,mormot rest 连接是否优于 Oracle 直接连接?
我在一家公司工作,开发一个使用 Delphi 10 Seattle (VCL) 制作的大型应用程序,使用直接连接到 Oracle 数据库服务器(2 层)。
mormot
一位专家建议使用(或其他库/组件)迁移到 3 层架构。
他的一个论点是,新架构(3 层)将提供更高的性能(交换数据的时间),因为 https 比直接 oracle 连接更快,并且 json 对象更轻(其余部分不使用缓存策略),我们之后可以制作网络客户端。
我不明白:
- 为什么 https 比 oracle 连接协议快?(如果是真的,为什么 oracle 不使用 https 和 json 作为交换数据的协议?)。
- 如果我们让所有功能和查询都在客户端(即使我们会做 Web 客户端),这不是安全问题吗?
亲切地
delphi - Delphi - mORMot 无法通过使用完整内存模型和 TSQLRestClientURI 的客户端访问数据
我一直在尝试使用 mORMOt DDD 方式开始一个新项目,并创建了一些类并开始以简单/简单的方式测试其中一个。我使用了关于 TUser 的 DDD 示例中的回归测试代码,并对其进行了修改以适合我的班级。
我试图最小化代码,希望它可以包含一些线索,帮助我理解这里出了什么问题。我发现只使用服务器时,一切正常,但使用客户端时,ORMselection 找不到数据。我尽可能地精简了代码,并用一些注释标记了它在哪些地方可以工作,哪些地方不能工作。
我也尝试将这个问题放在 mORMot 论坛上,但邮件无法到达该站点。收到此消息:
遇到错误错误:无法发送电子邮件。请联系论坛管理员,SMTP 服务器报错如下:“450 4.1.2: Recipient address denied: Domain not found”。
lazarus - SynCrypto.pas 和 Lazarus 编译问题
我正在尝试在我的 Lazarus 项目中使用 SynCrypto.pas(Synopse mORMot ORM/SOA/MVC 框架的一部分)来解密 AES-128 流。我的项目没有在此代码处编译 SynFPCTypInfo 中的错误:
我认为它与 Delphi TypInfo 模块不兼容。我该如何解决?