标签: baasbox

如何从HttpResponseMessage获取特定的标头值

我正在进行HTTP呼叫.我的响应X-BB-SESSION在HttpResponseMessage对象的标题部分中包含会话代码.如何获取特定标头值?

我正在使用foreach语句迭代所有标头(MSDN链接).但是编译器一直说不能这样做:

foreach statement cannot operate on variables of type
  System.net.http.headers.cachecontrolheadervalue because
  'System.net.http.headers.cachecontrolheadervalue' doesn't contain
  a public definition for 'GetEnumerator'
Run Code Online (Sandbox Code Playgroud)

这是我正在尝试的代码:

//Connection code to BaasBox

HttpResponseMessage response = await client.SendAsync(requestMessage, HttpCompletionOption.ResponseHeadersRead);
if (response.IsSuccessStatusCode)
{
    //get the headers
    HttpResponseHeaders responseHeadersCollection = response.Headers;
    foreach (var value in responseHeadersCollection.CacheControl)  --> HERE
    {
        string sTemp = String.Format("CacheControl {0}={1}", value.Name, value.Value);
    } else
{
    Console.WriteLine("X-BB-SESSION: NOT Found");
}
Run Code Online (Sandbox Code Playgroud)

从我试图获取值(X-BB-SESSION值)的标题内容是这样的:

Access-Control-Allow-Origin: *    
Access-Control-Allow-Headers: X-Requested-With    
X-BB-SESSION: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
Run Code Online (Sandbox Code Playgroud)

c# httpresponse httpclient windows-phone-8 baasbox

34
推荐指数
4
解决办法
5万
查看次数

标签 统计

baasbox ×1

c# ×1

httpclient ×1

httpresponse ×1

windows-phone-8 ×1