我想用ASP中的Google Drive API将文件上传到Google Drive.NET MVC#.
在调用我的API后执行代码时,google重定向到一个错误页面,显示
Error 400: redirect_uri_mismatch
我想澄清一下,我提到了项目属性中提到的正确/正确的URL,请调查我的问题.
我附上包含重定向uri的屏幕截图.
我想用ASP中的Google Drive API将文件上传到Google Drive.NET MVC#.
在调用我的API后执行代码时,google重定向到一个错误页面,显示
Error 400: redirect_uri_mismatch
我想澄清一下,我提到了项目属性中提到的正确/正确的URL,请调查我的问题.
我附上包含重定向uri的屏幕截图.
重定向uri必须与您在Google开发者控制台中注册的uri完全匹配
如果我们查看您的图像,您注册了以下两个重定向URI
这意味着谷歌将只接受应用程序中的这两个重定向URI.测试结果完全吻合.
现在,如果我们查看错误消息,我们可以看到您的应用程序正在发送
正如你所见,这与你注册的不匹配.你应该做的是复制并添加它.
注意:如果ide正在更改端口,则需要将其设置为静态端口,否则它将无法工作.它需要精确匹配
Google OAuth2: How the fix redirect_uri_mismatch error. Part 2 server sided web applications
下面的教程使用了GoogleWebAuthorizationBroker.AuthorizeAsync
种方法.这种方法是为安装的应用程序而设计的.所以实际上,您使用的凭据和客户端类型是错误的.如果你想使用这些代码,你需要创建本机或桌面客户端.
如果您try 按原样托管,它将try 打开服务器上的web浏览器.当您需要在用户计算机上打开web浏览器以获得用户同意时.如果你想授权用户使用你的web应用程序,你应该遵循web-applications-asp.net-core-3.
我为大家提供了关于Asp .net core 3 and Google login的教程,其中有一个关于同一主题的YouTube视频链接.
所以问题的真正原因是,您正在为一个已安装的应用程序使用代码,该应用程序的默认重定向Uri为http://127.0.0.1:{Port}/authorize/
,并且您正在try 将其用于一个web应用程序.需要将主机设置为web域的主机.
我已经和你正在学习的教程的作者取得了联系.我怀疑他们很快就会解决这个问题.Twitter thread