第8章 动态客户端注册 - IdentityModel 中文文档(v1.0.0)

OpenID Connect动态客户端注册的客户端库是作为HttpClient扩展方法提供的。

以下代码发送注册请求:

var client = new HttpClient();

var response = await client.RegisterClientAsync(new DynamicClientRegistrationRequest
{
    Address = Endpoint,
    RegistrationRequest = new RegistrationRequest
    {
        RedirectUris = { redirectUri },
        ApplicationType = "native"
    }
});

注意
RegistrationRequest类已经强类型用于所有标准登记参数性质如由规范定义。如果要添加自定义参数,建议从此类派生并添加自己的属性。

响应属于RegistrationResponse类型并具有标准响应参数的属性。您还可以访问原始响应以及解析的JSON文档(通过RawJson属性)。

在使用响应之前,您应该始终检查IsError属性以确保请求成功:

if (response.IsError) throw new Exception(response.Error);

var clientId = response.ClientId;
var secret = resopnse.ClientSecret;

github地址

posted @ 2019-04-28 23:09  ThinkJay  阅读(578)  评论(0编辑  收藏  举报