我不知道如何解释这个,除了说我有一个MVC项目我正在尝试将Google Calendar集成到我的项目中我创建了另一个MVC项目以确保在我参与之前如何工作和测试在我的主要项目中。
这是问题所在。在我的测试应用中,当我授予Google权限时,FileDateStore
会将我的令牌存储在名为 Google.Apis.Auth.OAuth2.Responses.TokenResponse-myemail@gmail
的文件中,内容为json。
但是当我将代码移植到我的主MVC应用程序中,运行它,授予google权限,然后FileDataStore
做了一些奇怪的事情。它会创建一个包含URL的文件,并将其命名为 System.String-oauth_myemail@gmail
我在调试期间在工作副本中注意到的一件事是文件以 System.String-oauth_myemail@gmail
开头,但随后更改为 Google.Apis.Auth.OAuth2.Responses.TokenResponse-myemail@gmail
我授权后,我收到了令牌回复。
在我的“破损”应用程序中,似乎没有获得令牌,因为result.Credential
返回null。
public async Task<ActionResult> IndexAsync()
{
var result = await new AuthorizationCodeMvcApp(this, new AppFlowMetadata()).
AuthorizeAsync(CancellationToken.None);
// other code here
}
有没有人遇到过这个?
我正在使用此文档作为指南:OAuth 2.0 for Web Server Applications
答案 0 :(得分:0)
原来我的基于属性的路由导致了havok。我不得不添加一些常规路由以使authcallback正常工作。