草庐IT

apache-commons-httpclient

全部标签

c# - .NET:HttpClient 使用我的接口(interface) IHttpClient 模拟它,但有一个内部对象为 NULL,它是密封的

不知道有没有人能帮忙。我已经创建了自己的IHttpClient,因此我可以使用最小起订量模拟HttpClient。工作得很好,但有一个名为DetaultRequestHeaders的内部对象,它有一个名为Authorization的属性。我在我的构造函数或我的类中设置它,它在注入(inject)的IHttpClient中接受,当然在运行时一切都按预期工作。但是使用单元测试我得到一个错误提示Objectreferencenotsettoinstance....这是因为DefaultRequestHeaders为空。现在在进一步调查之后,它似乎是HttpRequestHeaders但它是一

c# - HttpClient - 处理聚合异常

您好,我正在使用与此类似的HttpClient:publicstaticTaskAsyncStringRequest(stringurl,stringcontentType){try{varclient=newHttpClient();client.DefaultRequestHeaders.Accept.Add(newSystem.Net.Http.Headers.MediaTypeWithQualityHeaderValue(contentType));returnclient.GetStringAsync(url).ContinueWith(task=>{returntask.R

c# - HTTPClient 错误提供了无效的请求 URI

我正在尝试使用以下代码从网页中获取内容:HttpClienthttp=newHttpClient();varresponse=awaithttp.GetByteArrayAsync("www.nsfund.ir/news?p_p_id=56_INSTANCE_tVzMoLp4zfGh&_56_INSTANCE_tVzMoLp4zfGh_mode=news&_56_INSTANCE_tVzMoLp4zfGh_newsId=3135919&p_p_state=maximized");Stringsource=Encoding.GetEncoding("utf-8").GetString(r

c# - HttpClient GetStreamAsync 和 HTTP 状态代码?

我希望使用json.netperformancetipsdocumentation推荐的流,但是我无法找到如何在没有typicalawaitingtheHttpResponse的情况下获取http状态代码。.是否有一种方法可以在不读取数据的情况下先获取状态码?所以还在利用流? 最佳答案 我还没有测试以确保它的性能,但是这看起来很有希望:using(HttpClientclient=newHttpClient()){varresponse=awaitclient.GetAsync("http://httpbin.org/get",Ht

c# - 如何在没有 HttpClientFactory 的情况下将多个 HttpMessageHandler 添加到 HttpClient

我有一个使用HttpClient的控制台应用程序发出网络请求。varclient=newHttpClient();我正在尝试添加多个HttpMessageHandler到它(DelegatingHandler的自定义实现,真的)但是constructorforHttpClient只需要一个HttpMessageHandler.classLoggingHandler:DelegatingHandler{//...}classResponseContentProcessingHandler:DelegatingHandler{//...}这没关系...varclient=newHttpCl

c# - System.Threading.Tasks 中的 NullReferenceException 调用 HttpClient.GetAsync(url)

我的MVC4.0应用程序有一个奇怪的问题。我使用REST网络服务(AmazonAssociate)。我创建了一种方法,可以在任何地方使用。缩短版是这样的:privateasyncTaskGetRequest(stringurl){stringmyresponse;HttpResponseMessageresponse=null;HttpClientclient=newHttpClient();try{response=awaitclient.GetAsync(url);myresponse=response.Content.ToString();if(myresponse.Contai

c# - 缺少 HttpClient 对象方法

我正在从网站中分离出一些代码,并在复制相关特定页面的代码后,我在PostAsJsonAsync()代码行中遇到错误:HttpResponseMessageresponse=awaitclient.PostAsJsonAsync("api/...",user);在这个using语句中(也添加了标题)usingSystem;usingSystem.Net.Http;usingSystem.Net.Http.Headers;usingSystem.Net.Mail;usingSystem.Threading.Tasks;//...using(varclient=newHttpClient()

c# - 单元测试 Windows.Web.Http HttpClient 与模拟 IHttpFilter 和 IHttpContent,MockedHttpFilter 抛出 System.InvalidCastException

我有一个依赖于Windows.Web.Http(Windows10UAP应用程序)中的HttpClient的类。我想进行单元测试,因此我需要“模拟”HttpClient来设置Get-Call应该返回的内容。我开始使用HttpClient使用手写模拟IHttpFilter和IHttpContent进行“简单”单元测试。它没有按预期工作,我在Test-Explorer中收到InvalidCastException。单元测试看起来像:[TestMethod]publicasyncTaskTestMockedHttpFilter(){MockedHttpContentmockedContent

c# - 每个服务端点的 HttpClient 实例

在实例化HttpClient时,一个常见的建议是:Useasingleton,donotdisposeaftereachuse.但是,基于onthislink我看到评论,我认为这暗示了另一条规则:TheHttpClientclassinstanceactsasasessiontosendHTTPrequests.AnHttpClientinstanceisacollectionofsettingsappliedtoallrequestsexecutedbythatinstance.Inaddition,everyHttpClientinstanceusesitsownconnectio

c# - 如何停止 Windows.Web.Http.HttpClient 上的凭据缓存?

我遇到一个问题,应用程序尝试使用不同的身份验证方法从同一服务器访问资源,这两种方法是:凭据(NTLM、Basic等)OAuth(承载者)设置HttpBaseProtocolFilterHttpBaseProtocolFilter设置为:禁用缓存禁用自动UI凭据请求弹出窗口代码HttpBaseProtocolFilterfilter=newHttpBaseProtocolFilter();filter.CacheControl.WriteBehavior=HttpCacheWriteBehavior.NoCache;filter.CacheControl.ReadBehavior=Htt