c# - 带有谷歌驱动 API OAuth 2.0 的 Asp.net MVC 在生产中不起作用
问题描述
我正在尝试构建一个网络应用程序来打开一些我已经在谷歌驱动器中的视频。
我已经有视频的直接链接,并且我有一个带有视频播放器的网页,该播放器将 URL 作为参数来播放它。
问题是当我从 localhost 运行该站点时,或者 VS2015 正在按我的需要运行,并且视频播放没有问题。同时,在公共主机的生产主机中,一直显示无法打开谷歌帐户网站以获得认证批准的错误。我已经在使用 FlowMetadata,因为谷歌在这里显示 https://developers.google.com/api-client-library/dotnet/guide/aaa_oauth#web-applications-asp.net-mvc
我的自定义只是针对我的驱动器和只读范围,我也使用 API V3,并且我从开发人员控制台生成了我的凭据作为“其他”,因此不需要添加特定的 URL 作为受信任的重定向页面。我的公共域也得到了验证**我已经尝试过为 web 生成凭据并使用重定向 url 和相同的问题错误如下
NotSupportedException: Failed to launch browser with "https://accounts.google.com/o/oauth2/v2/auth?access_type=offline&response_type=code&client_id=xxxxxxx.apps.googleusercontent.com&redirect_uri=http%3A%2F%2F127.0.0.1%3A62583%2Fauthorize%2F&scope=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fdrive.readonly"
解决方案
对于您正在使用的 Web 应用程序 OAuth 实现,如文档 [1] 中所述,您确实需要添加一个重定向 URI:
为了成功运行以下代码,您必须首先在 Google API 控制台中为您的项目添加重定向 URI
从开发人员控制台创建凭据时,您需要选择“Web 应用程序”而不是“其他”,这样您就可以添加重定向 URI。
[1] https://developers.google.com/api-client-library/dotnet/guide/aaa_oauth#web-applications-asp.net-mvc
推荐阅读
- c# - 创建 Cron 作业以在 x 小时后运行
- windows - 我是否需要同时为 Windows 10 和 WSL 安装 Git?
- javascript - React:在两个组件层次结构之间传递状态的上下文
- c# - 为什么我的 Autofac 注册的 Prism EventAggregator 没有正确注入到视图模型中?
- ssas - 如何使用 MDX 计算月份之间的差异
- python-3.x - 在 python 的以下请求中,来自标头的 Set-Cookie 未作为 Cookie 发送
- c# - Streamwriter 在文本文件中写入新行
- java - 当我关闭应用程序...并打开通知...我单击返回 TestActicty 它关闭应用程序并且不返回主 Actitvty
- c - 没有源代码的 .so 文件的 GCC 链接
- c# - 如何使用 C# 在 Azure SQL 数据库上创建包含用户?