使用控制台应用程序打开浏览器,获取一些数据并将其传回应用程序

Yar*_*Yar 5 c# console-application oauth-2.0 google-oauth

我正在尝试使用简单的 C# 控制台应用程序获取 Google 授权代码。整个过程非常简单:使用包含Client IdGoogle Oauth2 唯一端点的 url 发送请求,登录 Google 帐户,然后获取授权码:

string url = "https://accounts.google.com/o/oauth2/v2/auth?whatever";
Process.Start("chrome.exe", url); // open up browser so user can log in
// get the auth code from chrome
Run Code Online (Sandbox Code Playgroud)

如何从 Google Chrome 获取生成的代码并将其传递回我的应用程序?

Boa*_*oaz 1

启动另一个打开 Web 服务器的进程。该 Web 服务器将简单地返回它所获取的请求 URL 代码参数。

在 OAuth 流程中将回调 URL 设置为http://localhost:8080(您还需要在控制台中进行设置)。

因此在用户同意后,Google 会重定向到 localhost。您的网络服务器将捕获请求 ( localhost?code=auth_code) 并将其返回auth_code到控制台,如下所述