获取令牌
优化前的代码:
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; }
优化后的代码:
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}";
}
}
}

浙公网安备 33010602011771号