/// <summary> /// 初始化请求正文 /// </summary> /// <param name="request"> HTTP请求对象 </param> /// <param name="params"> 参数容器 </param> internal HttpBody(IHttpRequest request, IHttpParameterContainer @params) : base(@params, HttpParamLocation.Body) { _request = request; ContentType = HttpContentType.Undefined; IsResponseBody = false; }
/// <summary> /// 初始化 Http参数集合 /// </summary> /// <param name="params"> 参数容器 </param> /// <param name="location"> </param> /// <exception cref="ArgumentNullException"> <paramref name="params" /> is null </exception> protected HttpParamsBase(IHttpParameterContainer @params, HttpParamLocation location) { if (@params == null) { throw new ArgumentNullException(nameof(@params)); } Params = @params; Location = location; }
/// <summary> /// 初始化 HTTP 请求 /// </summary> public HttpRequest() { var @params = new HttpParameterContainer(); Body = new HttpBody(this, @params); Headers = new HttpHeaders(@params); Query = new HttpQuery(@params, HttpParamLocation.Query); PathParams = new HttpStringParams(@params, HttpParamLocation.Path); Params = new HttpParams(@params); _paramContainer = @params; Timeout = new TimeSpan(0, 0, 15); Logger = new TraceSource(Httpdoer.DefaultLogger.Name, Httpdoer.DefaultLogger.Switch.Level); Logger.Listeners.AddRange(Httpdoer.DefaultLogger.Listeners); CookieMode = HttpCookieMode.ApplicationCache; Proxy = WebRequest.DefaultWebProxy; }
public HttpQuery(IHttpParameterContainer @params, HttpParamLocation location) : base(@params, location) { ArrayEncodeMode = ArrayEncodeMode.Default; ObjectEncodeMode = ObjectEncodeMode.Default; }
internal HttpStringParams(IHttpParameterContainer @params, HttpParamLocation location) : base(@params, location) { }
/// <summary> /// 初始化请求头 /// </summary> /// <param name="params">请求参数</param> internal HttpHeaders(IHttpParameterContainer @params) : base(@params, HttpParamLocation.Header) { }
/// <summary> /// 初始化参数集合 /// </summary> /// <param name="params"></param> internal HttpParams(IHttpParameterContainer @params) : base(@params, HttpParamLocation.Auto) { }