gpt4 book ai didi

postgresql - 如何防止特定列通过 REST API 更新显式设置它们的值?

转载 作者:行者123 更新时间:2023-11-29 12:33:05 24 4
gpt4 key购买 nike

我有多个表,我希望用户能够通过 rest api 更新这些表,并且许多(如果不是全部)的列具有合理的默认值。

Web 应用程序本身可以设计为隐藏这些列,但我也希望允许直接访问 API,以便其他人可以按照他们认为合适的方式使用数据。

不幸的是,这意味着他们可以显式设置默认列(将时间戳列设置为 1972,或将 id 列设置为任意值)。

在后端 (Postgres 9.4) 有什么机制可以限制它?

最佳答案

您应该在 API 级别执行此操作。

如果有人发出格式错误的请求(例如,他们想要覆盖 ID 或时间戳),请使用正确的状态代码(可能是 400)进行回答,并用有意义的消息进行修改,例如“嘿您尝试更新 ,它是只读的。”

如果您真的坚持在数据库级别处理它,here他们建议:

The easiest way is to create BEFORE UPDATE trigger that will compare OLD and NEW row and RAISE EXCEPTION if the change to the row is forbidden.

关于postgresql - 如何防止特定列通过 REST API 更新显式设置它们的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31187371/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com