【问题标题】:Windows phone 8.1 httpClient and session cookiesWindows phone 8.1 httpClient 和会话 cookie
【发布时间】:2014-12-28 08:40:37
【问题描述】:

httpClient 是否存储和重新发送会话 cookie?

因为使用 PostAsync 我正在连接(和调试)服务器,登录后当我检查我的状态时,会话不存在。

如果是真的,我怎么能告诉 HttpClient 使用 cookie?我一直在寻找这个问题,我只发现有人问如何操作 cookie,我只想维护会话 cookie。

谢谢。

我使用的代码

HttpClient httpClient = new HttpClient();
HttpResponseMessage httpResp = await httpClient.PostAsync(url, new FormUrlEncodedContent(parameters));

【问题讨论】:

    标签: windows-phone-8.1 httpclient session-cookies


    【解决方案1】:

    使用 HttpMessageHandlers cookie 容器:

                var handler = new HttpClientHandler();
                var cookieContainer = handler.CookieContainer;
    
                var client = new HttpClient(handler);
    

    【讨论】:

    • 但是...,它把cookies存储在cookieContainer中,所以没有办法自动完成?,我的意思是我必须从容器中获取cookie并管理它们?因为如果应用程序关闭该对象将丢失,那么我是否必须将 cookie 存储在手机中并在应用程序关闭时重新加载它?我认为这种方式是可以的:-(
    • 没错。例如,您可以使用 ApplicationData.Current.LocalSettings。
    • 谢谢 :-) 好吧...现在我必须找到将 cookie 存储为字符串然后重新加载的最佳方法,(因为 LocalSettings 只接受简单类型,如数字、字符串或布尔值)
    • Cookie 是字符串。 ? 否则:只需将它们放入字典并将其序列化为 json。
    猜你喜欢
    • 2014-08-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多