Struggling trying to get cookie out of response with HttpClient in .net 4.5

23 篇文章 0 订阅
17 篇文章 0 订阅
      public static async Task<LoginModel> Login(string UserName,string Password)
		{
			var model = new LoginModel ();
			try 
			{
				var url = string.Format("{0}&requestType={1}&requestAction={2}&Email={3}&Password={4}", Server_API_Base, "Users","ValidateUser",Uri.EscapeDataString(UserName), Uri.EscapeDataString(Password));


				var cookieContainer = new CookieContainer();
				using(var handler=new HttpClientHandler()
				{
					CookieContainer= cookieContainer,
					UseCookies=true,
					UseDefaultCredentials=false
				})
				using (var client = new HttpClient (handler){ BaseAddress=new Uri(url)}) 
				{
					var result = await client.GetStringAsync (url);
                    responseCookies = cookieContainer.GetCookies(new Uri(url)).Cast<Cookie>(); //get coolises


                     model = JsonConvert.DeserializeObject<LoginModel>(result);
					if (model.Success) 
					{
						App.Username=model.Data.FirstName+ "  "+model.Data.LastName;
						App.UserID=model.Data.UserID;
										return model;
				}
						catch (Exception ex) 
			{
				model.GeneralError="Network Error";
				return model;
			}
		}


        public static async Task<DashboardCellModel> SyncRotes()
        {
            try
            {
                var url = string.Format("{0}&requestType={1}&requestAction={2}&UserID={3}", Server_API_Base, "MobileUpdate", "GetUpdateSyncSetForTablets", "169");
                var cookieContainer = new CookieContainer();
                using (var handler = new HttpClientHandler()
                {
                    CookieContainer = cookieContainer
                })
                using (var client = new HttpClient(handler) { BaseAddress = new Uri(url) })
                {
                    foreach (var cookie in responseCookies)
                    {
			// send a cookie
                        cookieContainer.Add(new Uri(url), cookie);
                    }


                    var result = await client.GetStringAsync(url);


                }
                return null;
            }
            catch (Exception)
            {
                return null;
            }
		
        }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值