Ошибка входа в систему DotNetOpenAuth, но получение данных в строке запроса - PullRequest
0 голосов
/ 28 января 2010

Я пытаюсь настроить OpenID на веб-сайте ASP.Net 2, который я делаю прямо сейчас, и использую DotNetOpenAuth. Но, похоже, я наткнулся на кирпичную стену, которая не сдвинется с места, сколько бы я ни пытался.

При попытке войти в Google я получаю «Не удалось выполнить веб-запрос к https://www.google.com/accounts/o8/ud'». как ответ.

Странно то, что Google правильно отображает экран входа, который просит меня подтвердить, хочу ли я предоставить доступ к сайту.

Кроме того, данные для входа из Google правильно добавляются в строку запроса.

Так почему же OpenID.GetResponse не может извлечь мне правильные данные?

Я могу получить данные для входа из строки запроса самостоятельно. Но разве это хорошая идея?

Спасибо, что ответили!

Редактировать: Просто хочу уточнить здесь, что поведение на Localhost.

1 Ответ

1 голос
/ 28 января 2010

Если ваш веб-сервер находится за брандмауэром или требует, чтобы прокси-сервер отправлял исходящие HTTP-запросы, убедитесь, что в файле web.config содержится фрагмент для использования системного прокси-сервера по умолчанию (или специально названного).

<system.net>
    <defaultProxy enabled="true" />
</system.net>

И нет не просто извлекают данные для входа из строки запроса самостоятельно. Для этой строки необходимо выполнить лотов проверки, чтобы никто не смог войти в систему как кто-либо, просто написав строку запроса самостоятельно. На самом деле, похоже, что DotNetOpenAuth не выполняется во время проверки, поэтому вы вряд ли сможете сделать это самостоятельно, пока эта проблема с исходящими HTTP-запросами не будет решена.

Сложность в том, почему DNOA смог отправить вас в Google, но не смог связаться с Google позже, чтобы проверить положительное утверждение. Можете ли вы включить ведение журнала и добавить журналы к вашему вопросу, если то, что я показал выше, не работает?

...