问题标签 [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.

0 投票
1 回答
1205 浏览

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。

0 投票
1 回答
667 浏览

json - 如何使用 Delphi 和 Mormot 库手动创建 JSON?

我想手动生成 JSON 来表示复杂对象(没有任何 RTTI 等)。

这可以使用 Mormot(以及如何)完成吗?

我找到了 JSON Variant 类型,但它似乎不能像这里那样生成复杂的 JSON: Generate JSON array with LKJSON in Delphi 7

当然我可以像使用 lkJSON 一样,但由于我的项目已经使用了 Mormot,我更愿意使用已经在使用的库。

0 投票
2 回答
1144 浏览

delphi - 使用 mormot 自动将 TObject 序列化为 JSON

我正在尝试使用 mORMot 框架将 TObject 序列化为 JSON。不幸的是,结果始终为空。

我要序列化的类是:

SynCommons中定义了对应的mORMot方法:

这总是返回 null。在单步执行后TTextWriter.WriteObject(位于 unit 中SynCommons),以下代码似乎是将生成的 json 设置为 null 的位置:

我期待着这样的事情:

0 投票
1 回答
697 浏览

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.

0 投票
1 回答
217 浏览

delphi - 使用 dmustache 进行条件渲染

我正在使用 dmustache ( https://github.com/synopse/dmustache ) 来呈现一些模板。我想知道如果字符串变量是空字符串,怎么不能渲染某个部分。

这个简化的程序呈现FirstName: Joe MiddleName: LastName: Doe,但我想拥有FirstName: Joe LastName: Doe,因为没有 MiddleName (只有在这种情况下)。

使用模板中的部分不会改变结果

0 投票
1 回答
361 浏览

delphi - 更改变体属性名称 (Delphi)

我正在为 Delphi 学习一个很棒的框架 mORMot,并且我发现了很多有用的函数可以处理Variant(在 SynCommons 中)。

现在我想更改 a 的一些属性名称Variant,但搜索后我没有找到这样的功能,所以我决定写一个:

VariantChangeNames我写的可能不是很有效,因为它需要同时做deleteadd。似乎直接修改VName成员TDocVariantData是最有效的方法,但它是一个私有成员。

有什么建议吗?提前致谢。

BTW:mORMot官方论坛的邮件服务器好像有问题,我发帖的时候显示:

0 投票
2 回答
956 浏览

json - 就性能而言,mormot rest 连接是否优于 Oracle 直接连接?

我在一家公司工作,开发一个使用 Delphi 10 Seattle (VCL) 制作的大型应用程序,使用直接连接到 Oracle 数据库服务器(2 层)。

mormot一位专家建议使用(或其他库/组件)迁移到 3 层架构。

他的一个论点是,新架构(3 层)将提供更高的性能(交换数据的时间),因为 https 比直接 oracle 连接更快,并且 json 对象更轻(其余部分不使用缓存策略),我们之后可以制作网络客户端。

我不明白:

  • 为什么 https 比 oracle 连接协议快?(如果是真的,为什么 oracle 不使用 https 和 json 作为交换数据的协议?)。
  • 如果我们让所有功能和查询都在客户端(即使我们会做 Web 客户端),这不是安全问题吗?

亲切地

0 投票
1 回答
254 浏览

delphi - Delphi - mORMot 无法通过使用完整内存模型和 TSQLRestClientURI 的客户端访问数据

我一直在尝试使用 mORMOt DDD 方式开始一个新项目,并创建了一些类并开始以简单/简单的方式测试其中一个。我使用了关于 TUser 的 DDD 示例中的回归测试代码,并对其进行了修改以适合我的班级。

我试图最小化代码,希望它可以包含一些线索,帮助我理解这里出了什么问题。我发现只使用服务器时,一切正常,但使用客户端时,ORMselection 找不到数据。我尽可能地精简了代码,并用一些注释标记了它在哪些地方可以工作,哪些地方不能工作。

我也尝试将这个问题放在 mORMot 论坛上,但邮件无法到达该站点。收到此消息:

遇到错误错误:无法发送电子邮件。请联系论坛管理员,SMTP 服务器报错如下:“450 4.1.2: Recipient address denied: Domain not found”。

0 投票
1 回答
403 浏览

delphi - mORMot 响应端口 80 而不是 IIS 上的 HTTP 请求

我们公司的网站是在IIS 7.5上运行的,最近没有对配置做任何修改,网站开始给我们错误404,这是错误的图片:

在此处输入图像描述

该网站在除端口 80 之外的每个端口上都可以正常使用 HTTPS 和 HTTP ,而且我们从未使用过 MorMot

你有什么想法这个问题来自哪里?

0 投票
1 回答
186 浏览

lazarus - SynCrypto.pas 和 Lazarus 编译问题

我正在尝试在我的 Lazarus 项目中使用 SynCrypto.pas(Synopse mORMot ORM/SOA/MVC 框架的一部分)来解密 AES-128 流。我的项目没有在此代码处编译 SynFPCTypInfo 中的错误:

我认为它与 Delphi TypInfo 模块不兼容。我该如何解决?