- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我正在尝试使用 System.Net.Http.HttpClient 从 Web API 调用 PostAsync 方法。我收到以下错误:
System.AggregateException "A task was canceled."
任务:
Id = 1, Status = System.Threading.Tasks.TaskStatus.Canceled, Method = "{null}", Result = "{Not yet computed}"
代码:
using (HttpClientHandler handler = new HttpClientHandler())
{
handler.Credentials = new NetworkCredential("MyUsername", "p@ssw0rd");
using (HttpClient client = new HttpClient(handler))
{
var postData = new List<KeyValuePair<string, string>>();
postData.Add(new KeyValuePair<string, string>("status", "Hello world"));
HttpContent content = new FormUrlEncodedContent(postData);
var responseTask = client.PostAsync(url, content).ContinueWith(
(postTask) =>
{
postTask.Result.EnsureSuccessStatusCode();
});
}
我假设 responseTask 会强制方法同步运行?
这是一个 WPF 应用程序,而不是 ASP.NET。
最佳答案
我遇到了同样的错误,并追踪到我的 HttpClient 超时。默认超时为 100 秒。我将以下内容添加到 HttpClient 的创建中。
HttpClient httpClient = new HttpClient();
httpClient.Timeout = TimeSpan.FromMinutes(10);
关于c# - Web Api 的 PostAsync HttpClient 错误 - System.AggregateException "A task was canceled.",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16517504/
我正在使用控制台应用程序进行容量测试,在这些测试中,我调用了我在 API 中创建的 JobTitles 路由,在本例中是处理该路由的 Controller 。 对于我正在使用的 Post 函数,我使用
这个问题在这里已经有了答案: await vs Task.Wait - Deadlock? (3 个答案) 关闭 7 年前。 我有下一部分代码: using (var client = new Ht
我正在尝试在 dot-net 核心中将控制台应用程序作为窗口服务运行,并能够创建、启动、停止和删除该服务。 我在应用程序中使用 PostAsync() 方法,但问题是此方法在控制台应用程序中运行良好,
使用 HttpClient 时是否有保证取消帖子的方法?我目前有一个调用 do PostAsync,我试图使用 cancellationToken 取消它,但它似乎实际上并没有中止/停止操作。我仍然可
在我的 Xamarin 表单应用程序中 我正在尝试将 Json 字符串发布到我的网络服务,即 RestFul API 当我使用以下代码时: public static async Task SaveR
我正在使用 xUnit 和 Moq 编写测试用例。 我正在尝试模拟 HttpClient 的 PostAsync(),但出现错误。 下面是用于模拟的代码: public TestADLS_Ope
我注意到,使用 Bot Framework 和 Telegram channel 时,像 :) 这样的笑脸不会转换为表情符号。 不过,其实很简单,我们只需要将 :) 改成 :smile: 就会出现一个
我一直在尝试使用 POST 将图像上传到我的网站,图像被转换为 base64 以进行传输。 不幸的是,我偶然发现了我的 Siverlight 应用程序的错误。我已经成功获取了图片的base64字符
如果我在 Windows 机器上运行我的 Web 应用程序,一切正常。当我在 Linux (CentOS) 机器上运行此应用程序时,尝试发送 Post 请求时出现以下异常: System.Net.Ht
我正在调用 API Post 方法,但是,我不确定自己做错了什么,但 API 中的值始终为 null。我调用 API 的方法如下。当我点击它时,我可以看到 Ids 是具有 5 个值的整数列表。 pri
我有下面的方法将数据发布到 URL public async Task PostAsync(string method, string data, bool isJson = true, lo
我有一个 web Api,它有一个到 Startup.Auth 中的登录 token 设置的路由,如下所示: PublicClientId = "self"; OAut
这是一个 Windows 窗体应用程序。我正在使用秒表来测量此操作的时间: HttpResponseMessage response = await httpClient.PostAsync(EndP
在一些基准测试之后,我意识到每次我启动我的应用程序时,第一个请求都会比下一个请求花费更多的时间。第一个平均 500ms,下一个平均 120ms。 我在 HttpClient 中设置了 cookie,并
我是 C# 的新手。我正在使用 await 关键字来调用 HttpClient 的 API。 static async Task CreateChannel(string channelName) {
我已经看到很多关于此的问题,并且都指向我使用 ConfigureAwait(false),但即使这样做之后,它仍然没有返回任何响应。当我运行调试器时,代码在 PostAsync 处停止并且不会继续我的
我有一个 api 调用另一个。 这是我的代码,它似乎在世界的另一端导致 ModelState.IsValid = false。 var baseUri = new Uri("http://localh
我正在尝试使用 HttpClient 的 PostAsync 登录网站;然而,它总是失败,当我使用 WireShark 跟踪连接时,我发现它发布的数据不正确 代码 var content = new
我的问题与此非常相似question这里。我有一个 AuthenticationService 类,它生成一个 HttpClient PostAsync() 并且当我从 ASP 项目运行它时从不返回结
我正在使用 Microsoft 的 botframework。到目前为止,一切似乎都很好,但我无法一次性发布多个答案。 我尝试了几次将文本/字符串和消息作为参数的 context.PostAsync(
我是一名优秀的程序员,十分优秀!