old_flsystem/类库/HttpHelper2.1/HttpResult.cs

113 lines
1.9 KiB
C#
Raw Permalink Normal View History

2022-09-20 03:10:29 +00:00
using System;
using System.Collections.Specialized;
using System.Linq;
using System.Net;
namespace CsharpHttpHelper
{
/// <summary>
/// Http返回参数类 Copyrighthttp://www.httphelper.com/
/// </summary>
public class HttpResult
{
/// <summary>
/// Http请求返回的Cookie
/// </summary>
public string Cookie
{
get;
set;
}
/// <summary>
/// Cookie对象集合
/// </summary>
public CookieCollection CookieCollection
{
get;
set;
}
/// <summary>
/// 返回的String类型数据 只有ResultType.String时才返回数据其它情况为空
/// </summary>
public string Html
{
get;
set;
}
/// <summary>
/// 返回的Byte数组 只有ResultType.Byte时才返回数据其它情况为空
/// </summary>
public byte[] ResultByte
{
get;
set;
}
/// <summary>
/// header对象
/// </summary>
public WebHeaderCollection Header
{
get;
set;
}
/// <summary>
/// 返回状态说明
/// </summary>
public string StatusDescription
{
get;
set;
}
/// <summary>
/// 返回状态码,默认为OK
/// </summary>
public HttpStatusCode StatusCode
{
get;
set;
}
/// <summary>
/// 最后访问的URl
/// </summary>
public string ResponseUri
{
get;
set;
}
/// <summary>
/// 获取重定向的URl
/// </summary>
public string RedirectUrl
{
get
{
try
{
if (Header != null && Header.Count > 0 && Header.AllKeys.Any((string k) => k.ToLower().Contains("location")))
{
string text = ((NameValueCollection)Header)["location"].ToString().Trim();
string text2 = text.ToLower();
if (!string.IsNullOrWhiteSpace(text2) && !text2.StartsWith("http://") && !text2.StartsWith("https://"))
{
text = new Uri(new Uri(ResponseUri), text).AbsoluteUri;
}
return text;
}
}
catch
{
}
return string.Empty;
}
}
}
}