gpt4 book ai didi

.net - 用于从/向数据库检索/发送数据的 API

转载 作者:太空狗 更新时间:2023-10-30 01:47:23 25 4
gpt4 key购买 nike

我想听听您的经验?我怎样才能最好地创建一个 API 来从数据库中检索数据。如果您发送 View 名称或过程名称,那么在安全方面这对 tankne 来说不是完全没问题。所以我想知道是否有人对此有经验或想法?

例如,我是否应该有一个字段来告诉连接 API 的用户有权访问什么?表和行访问。

最佳答案

我会试一试。

您已经提到了 Web API,所以我假设您正在使用它,这意味着您在数据库之上有一个 REST API。

要做的事情:

  1. 提出要向用户公开的数据模型。这可能会以各种方式与您的数据库模型不同。如果你是一家商店,你可能有 2-3 个不同的表来存储产品,但你会希望通过一个 API 调用来公开一个“产品”。

  2. 一旦您拥有面向用户的数据模型,就可以开始编写测试了。您需要对 Web API Controller 进行单元测试,并且需要找到一种方法来模拟您正在进行的数据库调用。测试是非常值得的努力!

  3. 为了安全,您有很多选择。您可以从 HMAC (https://en.wikipedia.org/wiki/Hash-based_message_authentication_code) 或 OAuth (Best way to create a TOKEN system to authenticate web service calls?) 甚至 JWT (Secure WebAPI with a JWT) 中进行选择。

  4. 一旦您对用户进行了身份验证,您就可以为他们分配权限。他们可以根据他们有权访问的内容进行读取、写入和更新。您可以有一个数据库表来潜在地控制它。

  5. 我建议提前考虑版本控制。我的建议是始终拥有两个版本的 API - 当前版本和以前版本。您部署 API 并在第一次替换它时支持已弃用的 API 和新 API。不要尝试支持两个以上的版本。

  6. 在通过 Web API 发送数据之前,尽量编写某种抽象数据库的接口(interface)。如果需要,这可以帮助您在将来完全换出数据库。它还有助于单元测试。

关于.net - 用于从/向数据库检索/发送数据的 API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16824252/

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