我正在使用UWP C#开发一个应用,其中一个功能是可以通过网络接口下载安装包,我使用HttpClient类进行Get请求,但是在GetAsync接口被调用时抛出异常,内容为:无法与服务器建立连接,我已在appxmanifest文件中声明internetClient功能,请问该异常是由什么原因导致,应该如何解决

高杰 王 0 信誉分
2024-10-29T06:50:07.07+00:00
string url = $"{baseUrl}?model={param}";
            using (HttpClient client = new HttpClient())
            {
                try
                {
                    using (HttpResponseMessage response = await client.GetAsync(new Uri(url)))
                    {
                        if (response.IsSuccessStatusCode)
                        {
                            string responseBody = await response.Content.ReadAsStringAsync();
                            string newData = await Task.Run(() => 
                            { 
                                ResponseData responseData = JsonConvert.DeserializeObject<ResponseData>(responseBody);
                                return responseData.data.Replace("data:application/x-msdownload;base64,", "");
                            });
                            /*Debug.WriteLine("responseBody: " + responseData.data);*/
                            string savePath = await SaveBase64ToFileAsync(newData, param + ".exe");
                            if (!savePath.Equals(null))
                            {
                                path = savePath;
                            }
                        }
                        else
                        {
                            await logger.LogMessageAsync($"HttpClient download request failure: {response.StatusCode}");
                        }
                    }
                }
                catch (Exception ex)
                {
                    await logger.LogMessageAsync($"download Driver have an Error: {ex.Message} {ex.InnerException}");
                }
            }

代码如上,应如何解决该问题

通用 Windows 平台 (UWP)
通用 Windows 平台 (UWP)
一个 Microsoft 平台,用于生成和发布适用于 Windows 桌面设备的应用。
52 个问题
{count} 票

你的答案

问题作者可以将答案标记为“接受的答案”,这有助于用户了解已解决作者问题的答案。