在客户端和服务器端格式之间转换数据的正确术语是啥?

Posted

技术标签:

【中文标题】在客户端和服务器端格式之间转换数据的正确术语是啥?【英文标题】:What is the correct term for converting data between client side and server side format?在客户端和服务器端格式之间转换数据的正确术语是什么? 【发布时间】:2019-09-15 09:02:07 【问题描述】:

在使用 javascript 进行 Web 编程时,我经常将一个数据对象打包成客户端格式,并将其转换为服务器端格式,反之亦然。

这可能意味着例如:在snake_case 和camelCase 之间切换、用空字符串替换空值、可能进行一些重命名和重组,以及添加或忽略某些字段。

这种操作的正确或最佳术语是什么?

我看到它被称为序列化、清理或装饰。我觉得这些都不完全合适。

【问题讨论】:

我不熟悉这样的术语,但我认为您提出的非精确推荐确实不特定于客户端->服务器翻译。 数据按摩:将数据转换成想要消费的形式 没有“客户端”和“服务器端”格式。 @amn 有道理。您正在翻译代码/数据,在这种情况下,从某个客户端的计算机到某个服务器似乎并不重要。 @kabanus - 你的数据处理“管道”可能有很多步骤。不知道有没有一部作品可以把所有的步骤都封装起来。 【参考方案1】:

没有将数据从客户端格式转换为服务器端格式的术语,主要是因为不存在服务器端格式之类的东西客户端格式。根据双方使用的语言和代码约定,数据可以以非常不同的格式存在,并且没有包含所有服务器端数据格式的服务器端格式,对于客户端数据格式也是如此。

大小写转换只是服务器端和客户端的代码约定问题。我从来没有遇到过包含大小写转换概念的术语,特别是在服务器-客户端通信的情况下。

所以你必须在这里发明你自己的术语。我建议客户端-服务器数据映射

【讨论】:

我想这就是答案。谷歌没有迅速出现这样一个流行词的事实使它很可能不存在,如果存在,它对交流也没有用处。 可能没有官方的客户端和服务器格式,但通常情况下,在公司内部,不同的团队做前端和后端,因此您可能对他们的数据模型有不同的约定。 感谢您的回复。一个相关的问题是,如何命名执行此操作的函数。这让我想到了 mapDataToClient / mapDataToServer。【参考方案2】:

我会把你正在做的事情称为mapping,因为你正在重新排列你的数据并重命名变量。

序列化是将对象转换为字符串或“序列”格式(如二进制)的过程,但您要做的不止于此。

【讨论】:

【参考方案3】:

我不确定是否有一个单独的术语。蛇案例与骆驼案例通常涉及编程构造,而不是数据操作,并且很少是服务器与客户端的问题。

唯一想到的术语是“规范化”,这意味着将数据转换为标准格式。这通常在允许来自客户端的灵活数据格式,但允许所有处理它的模块被写入以期望更受限制的格式时完成。

例如,后端代码可能只理解驼峰式大小写,但 UI 或 API 允许蛇形大小写和驼峰式大小写。主入口点会将所有内容规范化为驼峰式。

【讨论】:

以上是关于在客户端和服务器端格式之间转换数据的正确术语是啥?的主要内容,如果未能解决你的问题,请参考以下文章

在服务器和客户端之间传递对象的更好方法是啥?

立即引用的正确术语是啥?

初始化数据成员的列表的正确术语是啥?

XML 元素的正确术语是啥?

=JSON与对象之间的转换

javascript客户端与服务器端通信