从 .NET 4.5 访问 IdentityServer4 Introspection
Accessing IdentityServer4 Introspection from .NET 4.5
我正在尝试从较旧的客户端应用程序访问 Id4 服务器。我能够很好地获得令牌,但是当我尝试验证令牌时,我在调用 client.SendAsync
时收到 415 - 'Unsupported Media Type'
错误。关于我缺少什么设置的任何想法?这些值在 Postman 中有效。
public bool IsTokenValid(string token)
{
bool isTokenValid = false;
HttpClient client = new HttpClient();
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
client.DefaultRequestHeaders.Add("Authorization", "Basic UHJvZml0U2FnZUFwaTpnR2VTZ0luRW9r");
HttpRequestMessage request = new HttpRequestMessage(HttpMethod.Post, _url + "/connect/introspect");
request.Content = new StringContent("token=" + token);
try
{
HttpResponseMessage response = client.SendAsync(request).Result;
}
catch (Exception ex)
{
Error = ex;
}
client.Dispose();
return isTokenValid;
}
尝试添加值为“application/x-www-form-urlencoded”或“multipart/form-data”的“Content-Type”header,我相信这应该可以解决您的问题。
这是因为内省端点returns当请求没有表单内容类型时不支持的媒体类型响应代码:https://github.com/IdentityServer/IdentityServer4/blob/63a50d7838af25896fbf836ea4e4f37b5e179cd8/src/Endpoints/IntrospectionEndpoint.cs
我正在尝试从较旧的客户端应用程序访问 Id4 服务器。我能够很好地获得令牌,但是当我尝试验证令牌时,我在调用 client.SendAsync
时收到 415 - 'Unsupported Media Type'
错误。关于我缺少什么设置的任何想法?这些值在 Postman 中有效。
public bool IsTokenValid(string token)
{
bool isTokenValid = false;
HttpClient client = new HttpClient();
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
client.DefaultRequestHeaders.Add("Authorization", "Basic UHJvZml0U2FnZUFwaTpnR2VTZ0luRW9r");
HttpRequestMessage request = new HttpRequestMessage(HttpMethod.Post, _url + "/connect/introspect");
request.Content = new StringContent("token=" + token);
try
{
HttpResponseMessage response = client.SendAsync(request).Result;
}
catch (Exception ex)
{
Error = ex;
}
client.Dispose();
return isTokenValid;
}
尝试添加值为“application/x-www-form-urlencoded”或“multipart/form-data”的“Content-Type”header,我相信这应该可以解决您的问题。
这是因为内省端点returns当请求没有表单内容类型时不支持的媒体类型响应代码:https://github.com/IdentityServer/IdentityServer4/blob/63a50d7838af25896fbf836ea4e4f37b5e179cd8/src/Endpoints/IntrospectionEndpoint.cs