OpenID Connect动态客户端注册的客户端库是做为HttpClient
扩展方法提供的。html
如下代码发送注册请求:git
var client = new HttpClient(); var response = await client.RegisterClientAsync(new DynamicClientRegistrationRequest { Address = Endpoint, RegistrationRequest = new RegistrationRequest { RedirectUris = { redirectUri }, ApplicationType = "native" } });
注意
RegistrationRequest类已经强类型用于全部标准登记参数性质如由规范定义。若是要添加自定义参数,建议今后类派生并添加本身的属性。github
响应属于RegistrationResponse
类型并具备标准响应参数的属性。您还能够访问原始响应以及解析的JSON文档(经过Raw
和Json
属性)。c#
在使用响应以前,您应该始终检查IsError
属性以确保请求成功:.net
if (response.IsError) throw new Exception(response.Error); var clientId = response.ClientId; var secret = resopnse.ClientSecret;
github地址code