Невозможно аутентифицировать клиента с помощью самостоятельно созданного токена (asp.net C #) - PullRequest
0 голосов
/ 18 августа 2011

У меня есть приложение Windows, которое содержит элемент управления веб-браузера.Это приложение создает HTTPWebRequest (с методом «Put»), который публикует маркер аутентификации на моем сервере asp.net.Сервер проверит подлинность токена в login.aspx, а затем перенаправит пользователя в Default.aspx.К сожалению, FormsAuthentication.RedirectFromLoginPage не перенаправляет на Default.aspx.Я предполагаю, что HTTPWebrequest не поддерживает перенаправление обратно в браузер, прежде чем он будет перенаправлен в Default.aspx.Любые идеи, как решить эту проблему ??

Другая проблема заключается в том, что мне нужно использовать элемент управления веб-браузера в приложениях, чтобы показать Default.aspx. Поэтому мне нужно записать Default.aspx в ответ.OutputStream и отправьте его обратно в приложение Windows.

Когда приложение Windows получит ответ, оно вызовет следующий код для отображения Default.aspx:

webBrowser.DocumentStream = Response.GetResponseStream ();

Действительно ценю ваши ответы.Спасибо

1 Ответ

0 голосов
/ 18 августа 2011

HttpWebRequest поддерживает перенаправление - я полагаю, что поддержка существует в целях аутентификации.См. Свойство HttpWebRequest.AllowAutoRedirect - по умолчанию оно имеет значение true, поэтому вы должны вернуть default.aspx из объекта веб-запроса.Объект HttpWebRequest является автономным компонентом и не имеет никакой интеграции с элементом управления WebBrowser, поэтому вы не увидите перенаправленную страницу в элементе управления браузера автоматически.Самое большее, вы можете захватить ответ (используя метод GetResponse ), а затем использовать ответ для загрузки контента в элемент управления веб-браузера.перехватите HTTP-запрос / ответ между вашим приложением и веб-сервером, чтобы понять проблему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...