web-dev-qa-db-fra.com

Comment extraire la valeur de l'en-tête personnalisé?

J'ai ce code exact de la réponse acceptée dans mon projet que je dois migrer vers ASP.NET Core MVP.

Comment extraire la valeur d'en-tête personnalisé dans le gestionnaire de messages de l'API Web?

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

Comment puis-je implémenter cela dans .NET Core?

J'espère que ce n'est pas considéré comme une question en double, car j'essaie de le faire avec le nouveau système plutôt qu'avec l'ancien. Je serais également bien si quelqu'un ajoute une réponse au lien concernant la version actuelle.

Edit: Où tous les types d'en-têtes http ont disparu dans ASP.NET 5? J'ai essayé ce lien, mais l'API a peut-être changé. Je ne pense pas que ce soit un doublon pour cette question non plus.

30
Kemal Tezer Dilsiz

Request.Headers renvoie (Microsoft.AspNetCore.Http.IHeaderDictionary interface qui définit la propriété suivante:

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

IHeaderDictionary a un contrat d'indexeur différent de IDictionary, dans lequel il retournera StringValues.Empty pour les entrées manquantes.

Type de retour: Microsoft.Extensions.Primitives.StringValues

Renvoie: la valeur stockée ou StringValues.Empty si la clé n'est pas présente.

Donc, vous pouvez simplement utiliser Request.Headers["environment"] pour obtenir la valeur de l'en-tête "environment"

42
Set