只有当外部登录缺失或过于long`我得到:`REDIRECT_URI使用外部登录
fail: IdentityServer4.Validation.AuthorizeRequestValidator[0]
redirect_uri is missing or too long
我redirect_uri
在客户端配置为“http://localhost:1234/signin-callback”,但在登录时我没有得到这个错误与密码。
[HttpGet]
public IActionResult ExternalLogin(string provider, string returnUrl = null)
{
var redirectUrl = Url.Action("ExternalLoginCallback", "Controller", new { ReturnUrl = returnUrl });
var properties = _signInManager.ConfigureExternalAuthenticationProperties(provider, redirectUrl);
return Challenge(properties, provider);
}
[HttpGet]
public async Task<IActionResult> ExternalLoginCallback(string returnUrl = null, string remoteError = null)
{
if (remoteError != null)
{
return BadRequest(remoteError);
}
var info = await _signInManager.GetExternalLoginInfoAsync();
if (info == null)
{
return BadRequest("no login info");
}
var result = await _signInManager.ExternalLoginSignInAsync(info.LoginProvider, info.ProviderKey, isPersistent: false);
if (result.Succeeded)
{
return Redirect(returnUrl); // debug gets to here where we redirect to "/connect/authorize/login?client_id=my-client"
}
return BadRequest();
}
此代码成功签署在但是当它重定向到“/连接/授权/登录?CLIENT_ID =我的客户”则返回错误。我应该寻找什么?