You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

103 lines
3.0 KiB
C#

using System;
using System.Net;
using System.Net.Security;
using System.Security.Cryptography.X509Certificates;
using System.Text;
namespace POSV.HttpRequest
{
/// <summary>
/// Http连接操作帮助类
/// </summary>
public partial class HttpHelper
{
/// <summary>
/// 请求参数
/// </summary>
public class HttpParam
{
private HttpVerb _httpVerb = HttpVerb.Get;
private string _accpet;
private string _userAgent = "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/29.0.1547.22 Safari/537.36";
/// <summary>
/// 请求URL
/// </summary>
public string URL { get; set; }
/// <summary>
/// 请求参数
/// </summary>
public object Parameters { get; set; }
/// <summary>
/// HttpVerb
/// </summary>
public HttpVerb Method {
get { return _httpVerb; }
set { _httpVerb = value; }
}
/// <summary>
/// 设置或获取Post参数编码,默认UTF8Encoding(false)
/// </summary>
public Encoding Encoding { get; set; }
/// <summary>
/// 设置509证书集合
/// </summary>
public X509CertificateCollection ClentCertificates { get; set; }
/// <summary>
/// 默认请求超时时间
/// </summary>
public TimeSpan? Timeout { get; set; }
/// <summary>
/// 获取或设置 Accept HTTP 标头的值。
/// </summary>
public string Accept {
get { return _accpet; }
set { _accpet = value; }
}
/// <summary>
/// 获取或设置 Content-type HTTP 标头的值。
/// </summary>
public string ContentType { get; set; }
/// <summary>
/// 获取或设置 Referer HTTP 标头的值。
/// </summary>
public string Referer { get; set; }
/// <summary>
/// 获取或设置请求的代理信息
/// </summary>
public IWebProxy Proxy { get; set; } = null;
/// <summary>
/// 获取或设置 User-agent HTTP 标头的值。
/// </summary>
public string UserAgent {
get { return _userAgent; }
set { _userAgent = value; }
}
/// <summary>
/// Cookie对象集合
/// </summary>
public CookieCollection CookieCollection { get; set; }
/// <summary>
/// header对象
/// </summary>
public WebHeaderCollection Header { get; set; }
/// <summary>
/// 回调验证
/// </summary>
public RemoteCertificateValidationCallback RemoteCertificateValidationCallback { get; set; }
}
}
}