获取令牌
优化前的代码:
public async Task<string> getToken() { var model = new { userName = shcutoken.userName, userPassword = shcutoken.userPassword }; string postDataStr = JsonConvert.SerializeObject(model); Utility.WriteLog("SHCU获取鉴权令牌:" + getTokenurl + DateTime.Now.ToString(), ""); //1.准备URL var requestMessage = new HttpRequestMessage(HttpMethod.Post, $"{getTokenurl}"); //2.准备请求体 requestMessage.Content = new StringContent(postDataStr, System.Text.Encoding.UTF8, "application/json"); //3、初始化一个HttpClient var _client = new HttpClient(); string retString = ""; try { //ServicePointManager.ServerCertificateValidationCallback = (sender, certificate, chain, sslPolicyErrors) => true; //ServicePointManager.ServerCertificateValidationCallback = true; ServicePointManager.ServerCertificateValidationCallback = ValidateServerCertificate; var response = await _client.SendAsync(requestMessage).ConfigureAwait(false); if (response.IsSuccessStatusCode) { var result = await response.Content.ReadAsStringAsync().ConfigureAwait(false); retString = result; } else { retString = JsonConvert.SerializeObject(new { code = -999999, msg = response.StatusCode }); } Utility.WriteLog("SHCU获取鉴权令牌返回:" + retString, ""); } catch (Exception ex) { Utility.WriteLog("SHCU获取鉴权令牌异常:" + ex.Message + ex.StackTrace, ""); return "SHCU获取鉴权令牌异常:url{" + getTokenurl + "}" + ex.StackTrace; } return retString; }
优化后的代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | public async Task< string > GetToken() { var model = new { userName = shcutoken.userName, userPassword = shcutoken.userPassword }; var requestMessage = new HttpRequestMessage(HttpMethod.Post, getTokenurl); requestMessage.Content = new StringContent(JsonConvert.SerializeObject(model), Encoding.UTF8, "application/json" ); using ( var client = new HttpClient()) { try { ServicePointManager.ServerCertificateValidationCallback = ValidateServerCertificate; var response = await client.SendAsync(requestMessage); response.EnsureSuccessStatusCode(); var result = await response.Content.ReadAsStringAsync(); Utility.WriteLog($ "SHCU获取鉴权令牌返回:{result}" , "" ); return result; } catch (HttpRequestException ex) { Utility.WriteLog($ "SHCU获取鉴权令牌异常:{ex.Message}{ex.StackTrace}" , "" ); return $ "SHCU获取鉴权令牌异常:url{{{getTokenurl}}}{ex.StackTrace}" ; } } } |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构