/// <summary> /// 获取wms的Token,并存储到cookie中 /// </summary> /// <returns></returns> protected async Task <string> GetWMSOauthToken() { //处理SSL问题 var httpClientHandler = new HttpClientHandler { ServerCertificateCustomValidationCallback = (message, certificate2, arg3, arg4) => true }; using (var http = new HttpClient(httpClientHandler)) { var clinetName = AppConfigurtaionServices.Configuration["OauthAccount:UserName"].ToString(); var pwd = AppConfigurtaionServices.Configuration["OauthAccount:Password"].ToString(); var account = new TokenRequest { UserName = clinetName, Password = pwd }; var content = new StringContent(account.ToJson(), Encoding.UTF8, "application/json"); var requestUrl = AppConfigurtaionServices.Configuration["WMSApi:domain"].ToString() + "/api/Oauth/authenticate"; var response = http.PostAsync(requestUrl, content).Result.Content.ReadAsStringAsync(); string resultState = await response; var tokenResult = resultState.ToObj <TokenResult>(); if (tokenResult.res_state) { _workContext.CurrentHttpContext.Response.Cookies.Delete("wms_token"); _workContext.CurrentHttpContext.Response.Cookies.Append("wms_token", tokenResult.access_token, new CookieOptions { HttpOnly = true, IsEssential = true, Expires = DateTime.Now.AddDays(1) }); return(tokenResult.access_token); } else { return(""); } } }