我正在尝试从我的域名连接到我的Google Analytics帐户。 我已经在localhost上完成了这个,没有遇到以下代码的问题:
string clientId = "******************.apps.googleusercontent.com";
string clientSecret = "*****************";
string gaUser = "**************";
string gaApplication = "**";
credential = GoogleWebAuthorizationBroker.AuthorizeAsync(
new ClientSecrets {
ClientId = clientId,
ClientSecret = clientSecret
},
new[] { AnalyticsService.Scope.AnalyticsReadonly },
gaUser,
CancellationToken.None
).Result;
service = new AnalyticsService(new BaseClientService.Initializer() {
HttpClientInitializer = credential,
ApplicationName = gaApplication
});
之后我在我的域名中尝试了这个,但是我收到了以下错误:
拒绝访问“Google.Apis.Auth”路径。
我通过添加 'var folder' 和 '新FileDataStore(文件夹)' 来解决此问题像这样:
string clientId = "******************.apps.googleusercontent.com";
string clientSecret = "*****************";
string gaUser = "**************";
string gaApplication = "**";
var folder = System.Web.HttpContext.Current.Server.MapPath("/App_Data/MyGoogleStorage");
credential = GoogleWebAuthorizationBroker.AuthorizeAsync(
new ClientSecrets {
ClientId = clientId,
ClientSecret = clientSecret
},
new[] { AnalyticsService.Scope.AnalyticsReadonly },
gaUser,
CancellationToken.None,
new FileDataStore(folder)
).Result;
service = new AnalyticsService(new BaseClientService.Initializer() {
HttpClientInitializer = credential,
ApplicationName = gaApplication
});
这仍然适用于localhost(谷歌身份验证页面弹出窗口)。 在域上,它不断加载页面。 (谷歌身份验证页面不会弹出)
我尝试在OAuth“Web应用程序的客户端ID”
中添加域名