只是想知道检查用户查看 React 页面的权限的选项,这只能通过 ASP.NET Web API 端点在服务器上实现。
我的项目结构是一个 React 客户端应用程序,它使用 .NET WebApi 项目作为后端。 React项目只是客户端,没有SSR。
作为此应用程序的一部分,任何用户(经过身份验证或未经身份验证)都可以从 API 执行 HTTP GET 请求来检索资源,并在 React 应用程序中显示详细信息。然而,只有资源的“所有者”才被允许编辑该资源。从 PUT 请求的服务器端,我可以通过确保当前经过身份验证的用户 ID 是资源的所有者来轻松检查这一点。
但是,如果不允许用户编辑资源,我想限制从 React 应用程序对编辑表单的访问。这需要某种 API 调用来验证是否应在组件加载时向用户显示编辑表单。我不想将所有这些信息添加到 Claims 对象中,因为用户可能是 1000 个资源的所有者,而这是行不通的。
我现在的想法是:
或
或
谢谢,希望这是有道理的。
干杯, 贾斯汀
既然您无论如何都需要从服务器获取资源,为什么不使用相同的请求来检查当前登录的用户是否可以对该资源执行 C.R.U.D 操作。然后,您可以将允许的操作与资源一起返回。根据您返回的允许操作,您可以渲染组件。