雅虎 OAuth 重定向不工作

Yahoo OAuth Redirect not working

有点碰壁了。我将我的回调域设置为我的 ngrok 实例(付费帐户)。我对 Yahoo 的身份验证的重定向请求如下所示:

"https://api.login.yahoo.com/oauth2/request_auth?client_id=fakeclientid--&redirect_uri=https://myname.ngrok.io/api/authentication_handler&response_type=code&language=en-us"

我将重定向至此:

return new RedirectResult(yahooOauthUrl);

我正确地被重定向,输入我的凭据,登录到雅虎,但我在雅虎这边看到了一个屏幕:

What Yahoo Shows

如果我在邮递员中或通过 Chrome 向我的重定向 URI 公开提交 GET/POST 请求,我会收到一个命中我的本地主机的请求。我还验证了我的 Yahoo 应用程序具有完全相同的回调域:

myname.ngrok.io

处理我的回调请求的代码在这里:

// GET/POST api/authentication_handler
[HttpGet]
[Route("/api/authentication_handler")]
public HttpResponseMessage HandleAuthentication(string code)
{
    return string.IsNullOrWhiteSpace(code) 
        ? new HttpResponseMessage(HttpStatusCode.InternalServerError) 
        : new HttpResponseMessage(HttpStatusCode.OK);
}

我遗漏了什么明显的东西吗?

所以,找出发生了什么。确保在测试此类内容时清除 cookie 或使用隐身模式。似乎 Chrome 正在缓存我的调用,因为在更改一些代码并对其进行测试后,我什至从未达到初始端点。一旦我这样做了,我发现 client_id 由于我使用字符串文字的方式而没有正确设置。