当我从一个公司的api中获取访问令牌时,我得到了“invalid redirect_url”错误消息。我在公司的api中设置了这个redirect_url。我还用swagger测试了这个url和方法。Url是正确的。
我的access_token要求如下:
string serviceUrl = $"https://apis.blabla.com/auth/oauth/v2/token?client_id={apiKey}&client_secret={apiSecret}&grant_type=client_credentials&redirect_uri={redirectUri}";
我的重定向网址是公开的,如下所示:
string redirectUri = "http://asd.zxc.com:1234/Api/GenerateToken/GenerateAccessToken"
GenerateToken是控制器,GenerateAccessToken是方法名称。方法类型是Post(如文档所需)。请求模型与文档中的相同。问题可能是什么?
-编辑
GenerateAccessToken方法可以是Void吗?我必须从redirect_url返回一些东西吗?
3条答案
按热度按时间oipij1gg1#
我会仔细检查您的
/oauth
请求URL中的redirect_uri是否与您的OAuth配置/公司设置中引用的URL * 完全 * 匹配。即使是最小的差异,如http与https或包括wwww.等,也会引发错误。您可能会在此OAuth Troubleshooting Guide中找到一些提示,Miro也为检查其他常见的OAuth错误提供了帮助!该指南中的第一项介绍了
invalid redirect
错误。w9apscun2#
查看日志文件,可能会有线索。在Program.cs中打开日志记录。注意,当使用调试级别或信息级别时,日志文件可能会变得很大。
js81xvg63#
我解决了这个问题。我的方法在重定向网址采取一个请求模型。我创建了一个模型,如在文档中。我改变了这个方法。我采取请求作为对象类型,并返回相同的模型在重定向网址。然后这个错误解决。