首页 > 其他 > 详细

wcf xml消息客户端cookie

时间:2014-09-24 15:39:18      阅读:140      评论:0      收藏:0      [点我收藏+]
public override bool Login(string userName, string password)
        {

            using (HttpClient client = new HttpClient(URI))
            {
                StringBuilder sb = new StringBuilder();
                sb.Append("Login");

                Uri uri = new Uri(URI + sb.ToString());
                Login lg = new Login();
                lg.userName = userName;
                lg.password = password;
                HttpContent content = HttpContentExtensions.CreateXmlSerializable<Login>(lg, null);

                StringBuilder conntentStr = new StringBuilder();
                //string s = content.ReadAsString();
                using (HttpRequestMessage request = new HttpRequestMessage("POST", uri, content))
                {
                    request.Headers.Accept.AddString(accepts);
                    using (HttpResponseMessage response = client.Send(request))
                    {
                        Microsoft.Http.Headers.Cookie cook=null;
                        if(response.Headers.SetCookie!=null && response.Headers.SetCookie.Count>0)
                        {
                            cook= response.Headers.SetCookie[0];
                            CookieMe.SaveCookie(cook["YourAuth"]);
                        }                      
                        Stream result = response.Content.ReadAsStream();
                        XmlSerializer ser = new XmlSerializer(typeof(LoginResponse));//将对象序列化到xml文档
                        LoginResponse lr = (LoginResponse)ser.Deserialize(result);
                        return lr.LoginResult;
                    }
                }
                
            }
        }

使用wcf starter kit,注意协定操作方法名和参数的序列化是一起的,因为服务端使用了

BodyStyle = WebMessageBodyStyle.Wrapped

注意序列化时的对象名必须与协定中的方法参数名大小写一致,否则会出现错误

登陆后客户端需要保存cookie,远程调用其他操作都要先向HttpRequestMessage对象添加cookie

request.Headers.Cookie.Add(cookie);

wcf xml消息客户端cookie

原文:http://www.cnblogs.com/army3force/p/wcf_xml_cookie.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!