Google驱动示例:未找到oauth2callback

Ste*_*ger 2 c# oauth-2.0 asp.net-mvc-3 google-drive-api

我需要帮助一下Google-Drive的C#示例程序...

我使用了这个所谓的 "教程"/"示例":https:
//developers.google.com/drive/examples/dotnet

从这里代码:
https://code.google.com/p/google-drive-sdk-samples/source/checkout

我上传了我的(仅略微修改过的)源代码,以防任何人没有Mercurial(我没有Mercurial,也没有管理员权限来安装它,而且Mercurial是获取源代码的唯一方法......):
http ://verzend.be/elt0k13enraw/DrEdit.rar.html

我总是得到

"无法找到资源"

请求的URL:/ oauth2callback

我没有发现这令人惊讶,因为没有实现oauth2callback控制器或处理程序...

我尝试添加一个名为oauth2callbackController的Controller,并重定向到oauth2callbackController.Index中的另一个动作,

return new RedirectResult("/about/about");
Run Code Online (Sandbox Code Playgroud)

但这只会创建一个NULL引用异常.

所以我想,可能是错误的控制器并重定向到

return new RedirectResult("/drive/Index");
Run Code Online (Sandbox Code Playgroud)

但这只会创建一个无限循环的重定向 - >允许 - >重定向 - 允许 - >等.

顺便说一句,更改API密钥+ REDIRECT_URI的配置在

Models\ClientCredentials.cs
Run Code Online (Sandbox Code Playgroud)

注意:
问题不在于我的修改.
样本也没有修改,没有完全相同的错误.
我所做的只是删除EntityFramwork引用,并在调用使用实体的方法时抛出"未实现的异常".

编辑:
附加信息:首先
我真正想做的是编写导出我的数据库的控制台服务,LZMA压缩导出的内容,使用OpenPGP加密,并每天将我的服务器的数据库上传到Google驱动器在24:00,没有任何用户输入.

我的导出工作没有问题,我得到了LZMA压缩工作没有问题,我得到加密与PGP工作没有问题.在工作日结束后(grrrr),当我在家时,我甚至能够在家里的Linux机器上安装mercurial下载示例代码,并使用SMB将其带到Windows机器上. .

但是现在我无法获得Google-drive SDK的样本......
而且,我真正需要的是控制台服务/守护进程的示例,而不是Web应用程序.当我创建API密钥时,我看到有人可以为服务创建密钥,但是没有关于如何编写Google-Drive服务(控制台应用程序)的示例,也没有有用的文档(是的,有参考,但它只是一个参考,IntelliSense提供的相同)...

Cla*_*ino 6

在API控制台的API Access选项卡中配置应用程序时,必须将Web服务器的根(/)设置为重定向URI,而不是/ oauth2callback.

假设您的应用程序已在www.example.com上发布,只需返回API控制台并将其设置为www.example.com,而不是www.example.com/oauth2callback

  • 太棒了,oauth2callback会自动添加...我认为那是有意的.首先,当您注册时输入数据,然后您必须再次更改它,使其按照您首先输入的方式...现在可以正常工作.顺便说一句:如果我设置REDIRECT_URI ="localhost:61422"; 并在API中注册localhost:61422,然后它说重定向URL不匹配.如果我输入"localhost:61422 /"; 在API中,然后它可以工作......但是那两个与程序员方面不匹配......无论如何,我可以理解一个,它在比较中缺少TrimEnd('/').谢谢回答 ! (2认同)