我注意到当我使用简单的资源(下面列出)时,我能够通过引用“WebOperationContext.Current.IncomingRequest.Accept”来获得Accept头,但符合我需要遍历所有提供的Accept头名称的规范,尽管看起来WCF只返回它找到的第一个。.net 4中是否支持重复的http头名称?
[WebGet(UriTemplate = "system", ResponseFormat = WebMessageFormat.Json)]
如果我把所有的头名称值放到一个字符串中并用逗号分开,它就可以工作。但这不是我在这里谈论的问题。
虽然http://www.faqs.org/rfcs/rfc2616.html第4.2节指出只要它们的值可以用逗号连接并且仍然是正确的语法(它可以),那么允许多个标头名称是允许的。
所以对我来说这很不好受。我错过了什么吗?
谢谢你的回复杰拉尔德。当我肯定的时候,我通过WebOperationContext.Current.IncomingRequest.Headers进行迭代,发现有重复的Accept名称通过,并且集合中只有一个Accept。但对于你的问题,我还没有明确检查[“接受”]。 – Blackey 2011-12-23 06:59:01
再次感谢,似乎'WebOperationContext.Current.IncomingRequest.Headers.GetValues(“Accept”);'工作正常。 – Blackey 2012-01-16 22:14:28