LuffyPro 最近的时间轴更新
LuffyPro

LuffyPro

V2EX 第 669338 号会员,加入于 2024-01-02 13:53:30 +08:00
LuffyPro 最近回复了
23 天前
回复了 LuffyPro 创建的主题 程序员 前端校验还是后端校验的问题
谢谢大家的回复,我看了下,大家好像都集中与前后端校验上,可能我问的方式不对。

我的本意是,前端表单项中,没有发送数据变动的表单项数据有没有必要在编辑时也一起提交上来,打个比方,一个表单中有手机号码和名字,这时候只改了名字,手机号码没改,在提交时,有没有必要把没发生变化的手机号码也一起通过接口提交上来。

因为如果没变化的手机号码也提交上来,并且手机号码必须确保唯一性,后端在校验号码唯一性时,除了判断手机号码是否已经被注册,还得再判断一遍是否等于当前用户的手机号码( true 的话支持继续修改),后面这个是否等于自己的手机号码的判断是因为前端把没有变化的手机号码也提交上来的,如果约定,数据不发生变化时不需要提交,那后端就只要判断该手机号码是否被注册就行了。

感觉 15 楼明白我在说什么。 @old9
23 天前
回复了 LuffyPro 创建的主题 程序员 前端校验还是后端校验的问题
@rabbbit 嗯嗯,不过这个判断交给后端去判断感觉也怪怪的,相当于把这个数据是否变化的判断交给后端去做了。当然你列举里面的很多字段是不需要判断数据是否发生变化的,因为没有手机号码有特殊的唯一性要求,其他数据提交上来直接覆盖就行了。
24 天前
回复了 LuffyPro 创建的主题 程序员 前端校验还是后端校验的问题
@LuffyPro 不传上来,后端当作你不想改手机号码,传上来表示你想改手机号码。
24 天前
回复了 LuffyPro 创建的主题 程序员 前端校验还是后端校验的问题
@facebook47 @IDAEngine @InDom @lneoi @Removable @rabbbit 谢谢大家回复
当然这里后端是要校验数据的,但我的意思不是后端不做校验,而是有没有必要特殊处理这种数据没变化但又把数据提交上来的场景,比如上面例子说的手机号码,手机号码是唯一的,如果你传过来的手机号码,数据库中已经存在了,后端就不给提交,但现在后端需要校验多一次传过来的手机号码是否等于他自己的手机号码,如果是这种特殊情况,能让他提交。如果前端校验该表单项没发生数据变化不提交上来,后端就不需要做这层校验了,接口传上来的手机号默认都是当作想要修改的。不过这样前端需要提交前判断相关表单项,而且不大可能每个表单项都去做这种数据无变化的判断,来决定要不要将手机号码传给接口。
@matrix1010 @yinmin @maymay5 谢谢回复,这几天忙其他的,后面看看大家说的这些方案。
谢谢大家的回复!
@renmu 谢谢建议,回头我试一下。
@Trinityuan 嗯嗯,你的补充是我现有方案正在执行当中的优化版。
@vacuitym 提示语里面确实没提供实例,返回格式这点是有规范要求的,我尝试过,数量不等时,带上上下文,同时强化提示语,结果返回还是数组长度不一致的结果。
@matrix1010 嗯嗯,目前暂时是这么做的,然而,这样会有两问题😂:
1.调用次数增加,耗时增多,延迟加大,用户体验不好;
2.增加 token 消耗量。
57 天前
回复了 whnoob 创建的主题 Java 功能设计思路
@LuffyPro 外键约束请忽略,用 gpt 帮我生成表结构的
57 天前
回复了 whnoob 创建的主题 Java 功能设计思路
不知道我理解的对不对,假设你的组织架构跟你的业务是多对多的关系,是否可以这样(简化版):
1.domain 表(组织架构):
CREATE TABLE domain (
id BIGINT PRIMARY KEY AUTO_INCREMENT,
parent_id BIGINT,
level TINYINT,
name VARCHAR(255),
is_deleted TINYINT
);

2.business 业务表:
CREATE TABLE business (
id BIGINT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(255),
is_deleted TINYINT
);

3.business_domain 表:
CREATE TABLE business_domain (
id BIGINT PRIMARY KEY AUTO_INCREMENT,
domain_id BIGINT,
business_id BIGINT,
is_deleted TINYINT,
FOREIGN KEY (domain_id) REFERENCES domain(id),
FOREIGN KEY (business_id) REFERENCES business(id)
);


功能:
修改:
1.删除,is_deleted=1;
2:换名字
扩充:
1.加多一级,level+1
68 天前
回复了 kalayygl001 创建的主题 Windows 求 在线网页 批量转为 pdf
换种思路,一个个转成 pdf ,然后批量合成一个。两个都有线上的,但好像没看到两功能合到一起的在线工具。
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2600 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 19ms · UTC 13:23 · PVG 21:23 · LAX 06:23 · JFK 09:23
Developed with CodeLauncher
♥ Do have faith in what you're doing.