繁体   English   中英

如何使用 RESTSharp 获取响应标头?

[英]How get the response header with RESTSharp?

我正在开发一个调用 API 的程序,一切正常,但我必须恢复响应头上的一些信息,我该如何恢复这些信息?

我尝试过类似的东西: string h = response.Headers; 但它不起作用。

 var client = new RestClient("https://xxxx.com/");

        client.Authenticator = new HttpBasicAuthenticator("user", "password");


        var request = new RestRequest("xx/xx/xx", Method.GET);
        IRestResponse response = client.Execute(request);
        var xml_text = response.Content;

我很确定 RestSharp 中的响应标头作为集合( IList )返回,因此将h声明为字符串将不起作用。 请参阅此处的来源。 您可能想尝试将值转换为这样的字符串:

foreach (var h in response.Headers)
{
  h.ToString();
}

如果你知道你要找的头的名称,你可以使用有点像显示的那样LINQ的在这里

string userId = response.Headers
    .Where(x => x.Name == "userId")
    .Select(x => x.Value)
    .FirstOrDefault().ToString();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM