private static async Task QueryImds()

in IMDSSample.cs [114:140]


        private static async Task<string> QueryImds(string path, string apiVersion, string otherParams)
        {
            string imdsUri = path + "?api-version=" + apiVersion;
            if (otherParams != null &&
                !otherParams.Equals(string.Empty))
            {
                imdsUri += "&" + otherParams;
            }
            string jsonResult = string.Empty;
            using (var httpClient = new HttpClient())
            {
                // IMDS requires bypassing proxies.
                WebProxy proxy = new WebProxy();
                HttpClient.DefaultProxy = proxy;
                httpClient.DefaultRequestHeaders.Add("Metadata", "True");
                try
                {
                    jsonResult = await httpClient.GetStringAsync(imdsUri);
                }
                catch (AggregateException ex)
                {
                    // Handle response failures
                    Console.WriteLine("Request failed: " + ex.GetBaseException());
                }
            }
            return jsonResult;
        }