我有身份服务器(IdentityServer4)设置并作为本地主机运行。目前我的客户项目是AspNet WebForms。还有另一个使用相同身份服务器的应用程序(javascript)。
这个 javascript 应用程序调用我的 webform 应用程序并提供通过 IdentityServer 提供的 accessToken。
现在,我想调用 userInfo 端点来获取 openId 和 profile 范围。
我正在按照文档文档中的说明进行操作,希望使用IdentityModel获取 userInfo 。但我目前无法获得任何用户信息。以下是来自身份服务器的示例响应
这是文档中提到的代码
protected void Page_Load(object sender, EventArgs e)
{
var httpclient = new HttpClient();
var token = HttpContext.Current.Request.Headers.Get("Authorization");
var response = httpclient.GetUserInfoAsync(new UserInfoRequest
{
Address = "https://localhost:44367/connect/userinfo",
Token = token
});
if (response.IsFaulted)
{
}
}
在向identityServer 发出请求时,我是否还必须提供clientId?而且,您知道出了什么问题以及如何从 accessToken 获取 userInfo。
请注意我在 Asp.Net webform 项目中的客户