我不知道它是什么,但是当我在调试模式下运行我的项目并点击这条线时:
var response = await httpClient.PostAsJsonAsync(url, payload);
它挂起一秒钟,然后就消失了,没有响应值。而且它也没有达到我的异常。
private async Task<string> PingServerAsync(DICOMClient client)
{
EchoViewModelSettings payload = new EchoViewModelSettings();
payload.ClientAE = client.ClientAETitle;
// more props here..
using (httpClient)
{
httpClient.BaseAddress = new Uri(m_appConfig.DICOM_URL);
var requestUri = handler + "/Echo?SessionID=" + System.Web.HttpUtility.UrlEncode(session.SessionID.ToString());
try
{
MqttService.applog.Debug($"Make request: {requestUri}");
var url = "http://localhost/MyDicomAPI/api/dicom/Echo?SessionID=my_session";
// *** FIRE POST HERE ***
var response = await httpClient.PostAsJsonAsync(url, payload);
MqttService.applog.Debug($"The Response: {response.Content}");
if (response.IsSuccessStatusCode)
{
var echoResponse = await response.Content.ReadAsStringAsync();
MqttService.applog.Debug($"The Echo Response is: {echoResponse}");
}
if (response.StatusCode == System.Net.HttpStatusCode.OK)
{
Console.WriteLine(response.StatusCode.ToString());
return response.StatusCode.ToString();
}
else
{
return response.StatusCode.ToString();
}
}
catch (Exception ex)
{
MqttService.applog.Error($"WTF is wrong now: {ex}");
throw;
}
}
}
同时查看此视频教程作为参考 - https://www.youtube.com/watch?v=VSAlIE2SFHw