提问人:Aslan 提问时间:11/16/2023 最后编辑:jonrsharpeAslan 更新时间:11/16/2023 访问量:56
在前端和后端之间映射变量名称 [已关闭]
Mapping variable names between frontend & backend [closed]
问:
我正在开发一个全栈应用程序(React、Node、Postgres)。当从前端接收表单数据时,我希望某些变量名称 sush as 和 I 映射到后端服务器上,以将其插入到 postgres 数据库中。现在我的问题是关于GET请求并将数据发送回前端:
在发送 json(映射回 )之前,我应该将名称映射回服务器上的前端命名约定还是在前端处理映射?
关于这种情况的最佳实践是什么?firstName
firstName
first_name
first_name
firstName
答:
-1赞
Onnwen
11/16/2023
#1
在 SQL 查询中,您可以重命名数据:
SELECT first_name as "firstName"
从查询返回的对象将具有正确命名的属性。
评论
2赞
Aslan
11/16/2023
在数据库层处理这个问题听起来根本不是一个好的做法。
3赞
Bergi
11/16/2023
...实际上它在 Postgres 中。如果没有引号,它会将字段名称规范化为小写。as "firstName"
0赞
Onnwen
11/16/2023
编辑,谢谢Bergi。
1赞
Onnwen
11/16/2023
根据具体情况,最有效的解决方案可能是在前端 Aslan。但我不是它的忠实粉丝。
2赞
Derek
11/16/2023
UI 不应了解它正在获取或保存的数据的基础数据库结构,反之亦然,数据库不需要知道 UI 如何使用它的任何信息。后端的接口(REST API、GraphQL 等)应该负责从请求和响应端进行任何转换。将这些问题分开。它的效率可能略低于数据库层,但对于长期可维护性来说,这是值得的。
2赞
Bergi
11/16/2023
#2
是的,最佳做法是将映射的代码保存在一个地方:要么在后端,要么在前端,而不是两者兼而有之。保持每个 API 中的命名约定一致。
如果后端接受作为输入并在插入数据库时在内部执行映射,则在从数据库读取时,它还应该在内部执行映射并作为输出提供。firstName
firstName
评论