在客户端和服务器端格式之间转换数据的正确术语是啥?
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 允许蛇形大小写和驼峰式大小写。主入口点会将所有内容规范化为驼峰式。
【讨论】:
以上是关于在客户端和服务器端格式之间转换数据的正确术语是啥?的主要内容,如果未能解决你的问题,请参考以下文章