基于令牌的认证
任何应用程序都可以将应用程序中的任何功能认证和使用为API。例如,您可以创建一个移动应用程序消耗相同的API。在本节中,我们将演示来自Postman的API (Google Chrome扩展程序)的用法。
认证
我们建议您禁用用于远程身份验证的用户的双因素身份验证。否则,客户端应该实现两个因素认证流程。我们假设您已经 为默认租户的管理员用户禁用了双因素身份验证,因为我们将在此示例中使用它。
应为所有请求配置以下标题(Abp.TenantId为默认租户的Id),单个租户应用程序不需要这些,或者如果要与主机用户合作):
然后我们可以发送用户名和密码作为POST请求到http:// localhost:62114 / api / TokenAuth / Authenticate
在返回的响应,的accessToken将用于授权的API。
使用API
在验证并获取访问令牌之后,我们可以使用它来调用任何授权的 操作。所有服务都可以远程使用。例如,我们可以使用用户服务获取用户列表:
我们向http:// localhost:62114 / api / services / app / User / GetUsers发送了一个GET请求, 并将标题添加为“ Bearer <accessToken> ”。返回JSON包含用户列表。
SWAGGER UI
SWAGGER UI被 集成到ASP.NET zero,但默认情况下禁用。Swagger UI配置位于.Web项目中的 Startup类中。您可以通过取消注释相关行来启用它:
在启动 ConfigureServices方法,启用以下行:
services.AddSwaggerGen();
并在Startup.Configure方法中,启用以下行:
app.UseSwagger();
app.UseSwaggerUi();
您可以使用此URL 浏览swagger ui:“/ swagger / ui ”。
因此,任何人(或任何应用程序)都可以轻松探索,测试和使用API。