我有一个可以通过不同域名访问的网站(site1.com,www.site1.com site2.com等)。 当我想登录时,我指定了一个重定向URL,这个重定向URL应该匹配数据库中任何可能的重定向URL。
我在asp.net中使用DotNetOpenAuth(oauth2)。但是我无法让客户端请求与允许的重定向列表匹配,因为我只能将1个重定向作为有效的URL传递。
return new ClientDescription(apiSecret, redirectUri, ClientType.Confidential);
有人建议如何解决这个问题吗?
答案 0 :(得分:1)
我正在查看使用DotNetOpenAuth 4.3.4实现的一个OAuth2服务器,似乎服务器希望我们实现
public IClientDescription GetClient( string clientIdentifier )
这意味着服务器需要抽象而不是具体类型。
我们的实际实现是自定义类
public class CustomClientDescription : IClientDescription
有一个验证回调网址的方法
public bool IsCallbackAllowed( Uri callback )
这是您的自定义实现可以将回调网址与可能的uris的列表匹配,而不是单个uri。