HttpPost на сервер asp (форма HTML) - PullRequest
0 голосов
/ 03 августа 2011

Используя HttpURLConnection и делая сообщение на сервер, я получаю страницу перенаправления с заголовком местоположения. Код состояния 302, поэтому я должен использовать эту информацию для перехода к перенаправлению. (Здесь все вроде бы хорошо .. по крайней мере для меня)

08-03 09:45:11.662: INFO/System.out(1664): <html><head><title>Object moved</title></head><body>
<h2>Object moved to <a href="http://website/mobile/(X(1)S(sf3dah5520rblujg4z2n0n55))/Login.aspx?ReturnUrl=%2fsyspower3%2fmobile%2fDefault.aspx&amp;AspxAutoDetectCookieSupport=1">here</a>.</h2>
</body></html>
08-03 09:45:11.662: INFO/System.out(1664): Status code - 302
08-03 09:45:11.672: INFO/System.out(1664): location : [http://website/mobile/(X(1)S(sf3dah5520rblujg4z2n0n55))/Login.aspx?ReturnUrl=%2fsyspower3%2fmobile%2fDefault.aspx&AspxAutoDetectCookieSupport=1]
08-03 09:45:11.672: INFO/System.out(1664): x-powered-by : [ASP.NET]
08-03 09:45:11.672: INFO/System.out(1664): content-type : [text/html; charset=utf-8]
08-03 09:45:11.672: INFO/System.out(1664): content-length : [282]
08-03 09:45:11.672: INFO/System.out(1664): date : [Wed, 03 Aug 2011 09:45:00 GMT]
08-03 09:45:11.672: INFO/System.out(1664): server : [Microsoft-IIS/7.5]
08-03 09:45:11.672: INFO/System.out(1664): location found: http://website/mobile/(X(1)S(sf3dah5520rblujg4z2n0n55))/Login.aspx?ReturnUrl=%2fsyspower3%2fmobile%2fDefault.aspx&AspxAutoDetectCookieSupport=1

После этого, если я использую эту ссылку в обычном браузере, я могу зайти на сервер без входа в систему, поэтому практически эту ссылку я должен использовать для публикации сообщения и получения информации, которая находится внутри сервера после вход в систему (И это действительно так, если я использую его в браузере)

Проблема: Если я сделаю новый POST на сервере уже с новым местоположением, я снова попаду на экран входа в систему. Должен ли я использовать куки для нового запроса или в чем моя проблема?

1 Ответ

1 голос
/ 03 августа 2011

Да, куки должны решить вашу проблему.Когда вы работаете с браузером, вы получаете заголовок ответа Set-Cookie при первом посещении сайта.Затем при продолжении браузер отправляет заголовок Cookie со всеми файлами cookie.

Один из файлов cookie содержит идентификатор сеанса HTTP.Например, серверы на базе Java используют cookie jsessionid.Этот файл cookie используется сервером для идентификации вашего сеанса, когда вы выполняете второй, третий и т. Д. Запрос.Если это поле отсутствует, сервер каждый раз создает новый сеанс.Сеанс новый, поэтому не проходит проверку подлинности, поэтому вы будете перенаправлены на страницу входа.

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