如何提取自定义标头值?

我从我的项目中接受的答案中获得了这个确切的代码,我需要将其迁移到ASP.NET Core MVP中。

如何在Web API消息处理程序中提取自定义标头值?

var env = Request.Headers.GetValues("environment").First(); 

我如何在.NET Core中实现它?

我希望这不是一个重复的问题,因为我试图用新系统而不是旧系统来做这件事。 如果有人在关于当前版本的链接上添加答案,我也会没事的。

编辑: 哪些类型的http标头在ASP.NET 5中消失了? 我试过这个链接,但API可能已经改变了。 我不认为这也是这个问题的重复。

Request.Headers返回定义下一个属性的Microsoft.AspNetCore.Http.IHeaderDictionary接口:

 StringValues this[string key] { get; set; } 

IHeaderDictionary与IDictionary具有不同的索引器契约,它将返回StringValues.Empty以查找缺少的条目。

返回类型:Microsoft.Extensions.Primitives.StringValues

返回:存储的值,如果键不存在,则返回StringValues.Empty。

因此,您可以简单地使用Request.Headers["environment"]来获取“environment”标头的值