У меня есть приложение, которое отправляет имя пользователя и пароль API через HTTPS. API возвращает HTTPOnly файлы cookie.Сохранение HTTPOnly файлов cookie на Windows Phone
Это означает, что файлы cookie «невидимы» для кода, но все еще существуют и будут отправляться на сервер в последующих запросах.
Заголовок Set-Cookie
удаляется из HttpWebResponse.Headers
и куки не появляются в HttpWebResponse.Cookie
с или HttpWebRequest.CookieContainer
. Однако, если последующий запрос выполняется с использованием того же HttpWebRequest.CookieContainer
, они отправляются на сервер, но они недоступны для кода.
Насколько я могу судить, это делает невозможным сериализацию или сохранение в любом случае. Кажется, единственный способ сделать эту работу - кэшировать фактическое имя пользователя и пароль и логин снова каждый раз.
Есть что-то, что мне не хватает?
Можете ли вы сериализовать весь «CookieContainer» (http://answers.flyppdevportal.com/categories/metro/csharpvb.aspx?ID=d214c388-41de-44b7-8260-9e21f3fcb859) и повторно использовать весь контейнер при необходимости? – keyboardP
Вы не можете манипулировать файлом httponly cookie. Они изменяются только при отправке HTTP-запросов. Это важно для безопасной связи между сервером и клиентом. Таким образом, это поведение, с которым вы сталкиваетесь, является нормальным. – user568109
@keyboardP Если вы сериализуете CookieContainer, то когда он несертифицирован, файлы cookie больше не отправляются. – zi3guw