c# - DotNetOpenAuth - 名称为 'OriginalHttpRequestUri' 的属性不存在异常

标签 c# .net webforms dotnetopenauth

我正在尝试实现 DotNetOpenAuth 服务提供商解决方案中的示例,但我没有使用 OpenId 进行身份验证,而是使用表单例份验证。

我复制并粘贴了消费者示例,但删除了服务引用并添加了指向我的 WCF 服务的新服务引用。

获取访问 token 非常有效,我可以看到它们出现在我的数据库表中,但是,一旦我尝试访问数据,OAuthAuthorizationManager 类中的这一行就失败了:

Uri requestUri = OperationContext.Current.IncomingMessageProperties["OriginalHttpRequestUri"] as Uri;

有什么我遗漏的地方吗?似乎这个属性应该存在,因为我没有看到它是在原始文件的任何地方手动添加的。我复制并粘贴了示例服务提供商项目中的 Web.config,我的所有文件都以相同的名称命名。

让我知道是否需要更多信息,或者是否有人希望我通过电子邮件将示例项目发送给他们以供查看。

感谢您的帮助。

最佳答案

Uri requestUri = operationContext.RequestContext.RequestMessage.Properties.Via;

我认为这是一种更安全的查找原始 HTTP 信息的方法。

关于c# - DotNetOpenAuth - 名称为 'OriginalHttpRequestUri' 的属性不存在异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5533488/

相关文章:

c# - Rebus 和 RabbitMQ - 使用多个独立的 Rebus 实例?

c# - C# 中是否有任何 CSV 读取器/写入器库?

c# - Stormpath OAuth 2.0 不支持的授权类型

c# - File.Delete 问题与 filestream.write()

css - Jquery UI 表单主题

c# - 将 YAML 文件读入 C#?

c# - 生成的 SQL 的差异

c# - 如何用最小的 C# 代码将一个 Stream 复制到一个字节数组?

c# - 什么是处理异常的最佳方法以及如何在asp.net中处理它们

C# 非常快速地从文本文件添加数千行到数据库