问题标签 [delegatinghandler]
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.
c# - C# HttpClient 刷新令牌策略
由于 Microsoft建议创建HttpClient
一次并在程序的整个生命周期中重复使用,我想知道如何更新DefaultRequestHeaders
,例如,令牌已过期并且需要刷新。
DefaultRequestHeaders
更多的是不是线程安全的(据我所知),并且在那里定义的标头列表由所有潜在的待处理请求共享。带有新标记Clear()
的列表和标题似乎不是明智的做法。Add()
更新
更准确地说,我不想/不需要为每个请求更改请求标头。仅当我获得 HTTP 401 状态代码时。
c# - 捕获对 Web Api 2.0 的所有请求,无论是否映射
我有一个正在运行的 Web API 2.0 localhost:4512
,我想拦截对域的所有请求,localhost:4512
无论它们是否由特定路由处理。例如,我想捕获对localhost:4512/abc.dfsada
或localhost:4512/meh/abc.js
我已经用 DelegatingHandler 尝试过这个,但不幸的是,这只会拦截对已处理路由的请求:
在 WebConfig.cs 中:
c# - 我们何时以及为什么应该使用 WebApi Action Filter 和DelegationHandler?
我在一个需要交叉错误处理和响应操作的项目中。我发现有Filters和Delegating Handlers,但我不知道这两者之间的区别,有人可以帮我解决这个问题吗?
asp.net-web-api2 - 如何根据 webapiconfig.cs 文件中的环境配置消息处理程序?
我正在使用 Aspnet webapi2。我想根据环境注册一个消息处理程序。你能告诉我如何根据环境进行配置。
c# - 来自 DelegatingHandler 的“无法多次发送相同的请求消息”错误
我不确定这段代码有什么问题。有人可以帮助我为什么在运行这段代码时看到错误吗?
这是我的处理程序代码:
当我运行我的 UT 时,我看到错误“System.InvalidOperationException:请求消息已发送。不能多次发送相同的请求消息。”</p>
c# - 使用 DelegatingHandler 实现 HTTP 请求重试逻辑
我正在尝试使用 DelegatingHandler 实现重试,但我也想设置 HttpCompletionOption。
我的代码如下所示:
正如您所看到的,没有通过继承 DelegatingHandler 来设置 HttpCompletionOption 的选项,我尝试创建 CustomDelegatinghandler,但在这种情况下,我无法像在 main 方法中使用的那样使用new RetryHandler(new HttpClientHandler()) 。
有没有办法实现具有/支持以下签名的 DelegatingHandler(或自定义)?
任何帮助,将不胜感激。谢谢,
c# - 循环中的 DelegatingHandler 和 HttpClient
我正在尝试HttpClient.GetAsync
循环执行。
根据Microsoft Doc,建议使用 1 个HttpClient
.
我得到的方式HttpClient
是
它GetAsync
第一次正常运行,但是当我重用httpClient
引用时,出现错误:The 'DelegatingHandler' list is invalid because the property 'InnerHandler' of 'HttpClientTelemetryHandler' is not null.
当我每次都尝试在循环中创建一个新实例时Handler
,它工作正常。HttpClient
现在这是一个利益冲突。我应该每次在循环中创建一个新实例,还是有任何其他方法可以做到这一点,这是正确的方法。
附加信息:我用来创建HttpClient
is的自定义库.Net Standard 2.0
和调用 HttpClient 的客户端应用程序 is .Net Core 2.1
。
感谢任何帮助。
谢谢。
c# - 为什么 IHttpContextAccessor.HttpContext 有时为空?
使用 .Net Core 2.2,我使用 HttpClient 调用 API,以及 Http 消息处理程序。消息处理程序注入IHttpContextAccessor
,但该对象有时包含一个HttpContext
为空的属性 - 我不明白为什么它会为空。
这是启动时的服务注册:
以及 HttpContext 有时为空的令牌处理程序实现。
_context.HttpContext
当它只是被注入时,什么可能导致它为空?
asp.net-core - 如何在 .net 核心中使用 DelegatingHandler 从 asp.net 核心中的响应中删除属性?
如何在 .net 核心中使用 DelegatingHandler 从 asp.net 核心中的响应中删除属性?
如果登录用户不是管理员,那么如何从 API 的响应中删除某些属性?
c# - 验证我的 DelegatingHandler 是否已添加到 IHttpClientBuilder
我有代码向客户端添加一个命名HttpClient
并ServiceCollection
添加一个DelegatingHandler
。示例代码:
编写单元测试时,如何验证DelegatingHandler
添加的实现是MyDelegatingHanlder
?