如何在IdentityServer 4中设置自定义错误消息?

问题描述 投票:1回答:1

我正在尝试自定义IdentityServer 4返回的错误消息。我正在运行.NET Core 2.2应用程序。在docs中,我添加了以下位:

services
    .AddIdentityServer()
    // other stuff
    .AddCustomTokenRequestValidator<TestValidator>();

...

public class TestValidator : ICustomTokenRequestValidator
{
    public Task ValidateAsync(CustomTokenRequestValidationContextcontext)
    {
        var validationResult = context.Result;

        validationResult.ErrorDescription = ":D";

        return Task.CompletedTask;
    }
}

问题是,当我在ValidateAsync方法中设置断点时,永远不会触发该断点。我想做的是,当用户输入无效的一组客户ID /密码以返回自定义消息而不是通用error: invalid_client时。

要请求令牌,我在其他项目中使用以下命令:

var token = await httpClient.RequestClientCredentialsTokenAsync(new ClientCredentialsTokenRequest {...});
c# asp.net-core asp.net-identity identityserver4
1个回答
0
投票

在启动时注册您的实现

services.AddSingleton<TestValidator, ICustomTokenRequestValidator>();
© www.soinside.com 2019 - 2024. All rights reserved.