问题标签 [dotnet-httpclient]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2127 浏览

json - 使用 .NET 客户端使用 JIRA 5.0.1 REST JSON API 获取 JIRA 问题

我是使用基于 REST 的服务的新手,但我想做的是我希望很容易的事情,即获取 JIRA 问题并使用 .NET Framework 4.5 客户端显示它。

我发现我可以通过将以下 URI 粘贴到浏览器中来获得 JSON 响应: https ://jira.atlassian.com/rest/api/latest/issue/JRA-9

我需要做的是从 .net 应用程序中调用它。因此,经过一些研究,我发现在 .NET 4.5 中使用 HTTPClient 是可行的方法。

为了运行以下测试代码,您需要引用 .NET Framework 4.5 并添加对 System.Net.Http 和扩展 System.Net.Http 和 System.Json 的引用:

所以我被困在与太多分隔符有关的例外。因此,我的问题是:

  • 我是否朝着正确的方向前进?
  • 如何解决太多分隔符异常。
  • 解决异常后,访问部分 JSON 响应(例如 JIRA 问题磁贴和描述等)的最佳方式是什么?

非常感谢

保罗

0 投票
3 回答
21550 浏览

c# - 存根或模拟 ASP.NET Web API HttpClient

我在一个项目中使用新的 Web API 位,我发现我不能使用 normal HttpMessageRequest,因为我需要将客户端证书添加到请求中。结果,我正在使用HttpClient(所以我可以使用WebRequestHandler)。这一切都很好,除了它不是存根/模拟友好,至少对于犀牛模拟。

我通常会创建一个HttpClient我会使用的包装服务,但如果可能的话,我想避免这种情况,因为我需要包装很多方法。我希望我遗漏了一些东西——关于如何存根的任何建议HttpClient

0 投票
2 回答
8601 浏览

c# - 如何在集成测试中使用 System.Net.Http.HttpClient 处理异步异常?

我正在运行一套使用System.Net.HttpClient. 我们在这些测试中的大多数“行为”部分都使用这种通用格式:

但是,间歇性地运行这些测试会产生如下结果:

我意识到 usingHttpClient是为了启动异步操作,并不适合我们总是告诉它等待的集成测试场景。所以这让我想到了两个有点相关的问题:

  1. 使用HttpWebRequest/HttpWebResponse更适合这种情况吗?
  2. 即使是这样,HttpClient处理异步启动的请求错误的最佳方法是什么?
0 投票
2 回答
2470 浏览

asp.net-mvc-4 - 为什么在使用 WebClient 调用另一个控制器时返回 500 错误?

我正在测试此链接上的示例:http: //msdn.microsoft.com/en-us/vs11trainingcourse_aspnetmvc4_topic5#_Toc319061802但使用 WebClient 调用另一个控制器时出现 500 错误。

当我直接访问“http://localhost:2323/photo/gallery 正在运行,但我尝试使用 WebClient 从操作中返回 500 错误?为什么?”

由以下异常创建的 500 错误:

0 投票
1 回答
2039 浏览

asynchronous - HttpClient SendAsync 线程回调在解析响应之前死亡

我正在测试 httpClient sendAsync 方法。同步调用它工作正常。但是,当我尝试执行异步 http 请求时,任务在我处理消息之前终止。任何机构遇到这个问题?

这个同步调用有效

但是异步调用不起作用。当我尝试解析响应时,线程死了。

任何帮助表示赞赏。

0 投票
1 回答
3017 浏览

asp.net - Asp.net WebApi HttpClient 强类型 PostAync

我正在尝试发布到 Asp.Net WebApi 发布方法:

客户电话是:

但是服务器从不接听电话,我使用的是 JsonNetFormatter 而不是内置的格式化程序。

0 投票
2 回答
20130 浏览

c# - 在 .NET 4.5 中使用 HttpClient 进行编码

我正在使用 XML API 消耗一些数据。此 API 始终以 UTF-8 格式提供数据。

使用WebClient该类发出请求时,我可以设置编码。例如:

但是HttpClient课堂呢?

我应该使用:

...然后将字节从编码(UTF-8)转换为字符串?

或者有没有办法直接将内容作为 UTF-8 字符串获取?

最后,这是 XML 响应的摘录:

0 投票
3 回答
83354 浏览

.net - 同时使用 HttpClient 是否安全?

在我能找到的所有用法示例中HttpClient,它用于一次性调用。但是,如果我有一个持久的客户端情况,可以同时发出多个请求怎么办?client.PostAsync基本上,一次针对同一实例调用 2 个线程是否安全HttpClient

我并不是真的在这里寻找实验结果。作为一个工作示例可能只是一个侥幸(并且是一个持久的),而失败的示例可能是一个错误配置问题。理想情况下,我正在为 HttpClient 中的并发处理问题寻找一些权威的答案。

0 投票
2 回答
4912 浏览

windows-8 - 为 webview 控件提供域/用户凭据

有谁知道如何为 WebView 控件提供凭据(甚至更好 - 在特定域用户的上下文中运行 Windows 8 Metro 风格应用程序/WinRT 应用程序?)我尝试按照此处列出的 HttpClient + WebView 方法( http://social.msdn.microsoft.com/Forums/en-US/winappswithcsharp/thread/05e46a0a-e913-469d-a4a5-4a805dcf158a)但它仍然提示用户输入凭据,因为在返回的内容中有指向受保护的物品。

我有一个 NetworkCredential 对象,我非常想将它应用到每一个 HTTP 调用。

肯定有人以前做过这个吗?:)

0 投票
1 回答
7976 浏览

.net - 新的 HttpClient 代理设置问题

我正在尝试根据新的 fw 4.5 功能(例如 HttpClient 和 await/async)重写旧的网络身份验证逻辑,并且我在请求和响应之间遇到了意外的延迟(大约 15 秒)。我猜这是因为客户端试图从 IE 中查找/使用代理,就像使用旧的 HttpRequest/WebClient 一样。这是代码:

此方法与 api 中的其他方法包装在一起,实际上与当前情况无关:

身份验证发生在各自的 ViewModel 命令中:

调试输出:

当我在 HttpClientHandler 设置中取消注释 UseProxy = false 时,延迟消失并且身份验证没有延迟。即使我没有取消注释 UseProxy (每十次运行一次),有时也会出现同样的问题。问题是 - 这是一个错误还是什么?尝试从服务器端调试,发现轮询请求之间没有差异。提前致谢。