DotNetOpenAuth - Свойство с именем 'OriginalHttpRequestUri' отсутствует. Исключение - PullRequest
3 голосов
/ 04 апреля 2011

Я пытаюсь реализовать пример из решения поставщика услуг DotNetOpenAuth, но вместо использования OpenId для проверки подлинности я использую проверку подлинности с помощью форм.

Я скопировал и вставил пример Consumer, но удалил ссылку на службу и добавил новую ссылку на службу, указывающую на мою службу WCF.

Получение токенов доступа работает отлично, и я вижу, как они появляются в моей таблице базы данных, однако, как только я пытаюсь получить доступ к данным, в этой строке в классе OAuthAuthorizationManager происходит сбой:

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

Есть ли что-то, чего мне не хватает где-то? Кажется, что это свойство должно существовать, потому что я не вижу, где оно добавлено вручную где-либо в оригинале. Я скопировал и вставил файл Web.config из примера проекта поставщика услуг, и все мои файлы названы одинаково.

Дайте мне знать, если понадобится дополнительная информация или кто-нибудь захочет, чтобы я отправил им электронное письмо с примером проекта.

Спасибо за любую помощь.

1 Ответ

3 голосов
/ 04 апреля 2011
Uri requestUri = operationContext.RequestContext.RequestMessage.Properties.Via;

Я думаю, что это более безопасный способ поиска исходной информации HTTP.

...