2011-11-21 62 views
0

我们是一个OpenId提供商。服务器位于防火墙后面,因此无法进行RP发现,因为Provider和RP之间没有直接的出站连接。 RP发现必须经过代理。 我读了约DotNetOpenID - Identity Provider behind a firewall?并试图实现IDirectWebRequestHandler,如你所说。在StandardWebRequestHandler之后,我几乎模拟了这个类。但GetResponse()函数返回一个IncomingWebResponse实现。这个类有一个内部方法GetSnapshot(),由于它是内部的,我不能在DotNetOpenAuth项目之外实现这个类。 有没有办法解决这个问题?或者我应该只设置代理在web.config像Specifying a proxy to use with DotNetOpenIDDotNetOpenAuth - 实现IDirectWebRequestHandler类

回答

0

为什么你想实现IncomingWebResponse,而不是简单地使用内置到DotNetOpenAuth?你(希望)不应该仅仅需要实现IDirectWebRequestHandler本身。

也就是说,在web.config文件中设置代理是一种明智和简单的方法。

+0

如果您想将其留给最终用户来配置代理,该怎么办?从最终用户的角度来看,web.config不会被认为是“更简单的方法”。我希望看到更多关于这个问题的答案。 ---编辑:我现在看到,这是从服务器的角度来看。我的问题是不一样的 – Nilzor