I am consuming an API and uploading data and check any update using Stream (Server sent events). Below is my code. I have created a async method and also called await while executing my request. where code is exiting and not proceeding to next step.
public static async void ResponseDataStream(string url, string Token)
{
RestResponse DataResponse = null;
var start = System.DateTime.Today.ToString("yyyy-MM-ddThh:mm:ss.fffZ");
try
{
var options = new RestClientOptions(Settings.Default.API_BaseURL)
{
MaxTimeout = -1,
};
var client = new RestClient(options);
var request = new RestRequest(Settings.Default.StreamURL, Method.Get);
request.AddHeader("Authorization", "XYZ";
//request.AddHeader("Content-Type", "application/json");
request.AddHeader("source-system", "ZZZ");
request.AddHeader("Connection", "keep-alive");
request.AddParameter("start", start);
DataResponse = await client.ExecuteAsync(request);
ClsLogger.LogEvent("Reading Stream response." +DataResponse.IsSuccessStatusCode);
if (DataResponse.IsSuccessStatusCode == true)
{
ClsLogger.LogEvent("Successfully connected to stream and reading content of the stream");
var result = Newtonsoft.Json.JsonConvert.DeserializeObject(DataResponse.Content);
ClsLogger.LogEvent("Data Stream Result is: " + result);
if (result != null)
{
UploadData(Settings.Default.UploadURL, Settings.Default.FilePath, Token.ToString());
}
}
else { }
}
catch (Exception ex) { throw ex; }
}
Can someone please help what I am missing here? Or why my code is exiting immediate after await function calls.