4 Star 30 Fork 7

Xfrogcn / Xfrogcn.AspNetCore.Extensions

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
TokenRequest.md 1.53 KB
一键复制 编辑 原始数据 按行查看 历史
Xfrogcn 提交于 2021-02-22 09:51 . Http Token example

Http认证令牌处理

扩展库通过令牌提供器,并与HttpClient集合,实现了HttpClient请求认证的自动化处理,大大简化了认证的过程。

有关令牌提供器的详细信息,请参见令牌提供器

要使用Http认证令牌处理,可分为两个步骤:

  • 通过令牌提供器配置认证信息
  • 配置对应名称的HttpClient使用相应的认证配置

HttpClient与令牌提供器之间通过指定的ClientID关联

示例

以下配置ClientID为TestClient的客户端使用基本认证(用户名为test,密码为test),并设置默认HttpClient(名称为"")自动使用此认证信息管理认证过程。

    // 1. 首先,需要加入客户端信息,每个客户端必须有唯一的ID
    sc.AddClientTokenProvider(options =>
    {
        options.AddClient("", "TestClient", "")
            // 设置此客户端使用Basic认证
            .UseBasicAuth("test", "test");
    });
    // 2. 设置HttpClient关联认证管理器
    sc.AddHttpClient("", client =>
    {
        client.BaseAddress = new Uri("http://localhost");
    })
    // 设置此客户端关联TestClient的认证配置
    .AddTokenMessageHandler("TestClient");


    // 3. 使用
    IServiceProvider sp = sc.BuildServiceProvider();

    IHttpClientFactory httpFactory = sp.GetRequiredService<IHttpClientFactory>();
    var client = httpFactory.CreateClient("");
    string response = await client.GetAsync<string>("/limit");

有关示例,请参考示例项目examples/Http/BasicAuth

C#
1
https://gitee.com/WuYeCai/Xfrogcn.AspNetCore.Extensions.git
git@gitee.com:WuYeCai/Xfrogcn.AspNetCore.Extensions.git
WuYeCai
Xfrogcn.AspNetCore.Extensions
Xfrogcn.AspNetCore.Extensions
master

搜索帮助