protected internal HttpWebRequest GetServiceProxyRequest <ST>(ServiceProxyVerbs verb, string methodName, params object[] parameters) { ServiceProxyVerbs ignore; string queryStringParameters; GetQueryStringAndVerb(methodName, parameters, out queryStringParameters, out ignore); return(GetServiceProxyRequest <ST>(verb, methodName, queryStringParameters)); }
protected internal override HttpWebRequest GetServiceProxyRequest(ServiceProxyVerbs verb, string className, string methodName, string queryStringParameters = "") { HttpWebRequest request = base.GetServiceProxyRequest(verb, className, methodName, queryStringParameters); if (SessionCookie == null) { Logger.AddEntry("Session Cookie ({0}) was missing, call StartSession() first", LogEventType.Warning, SecureSession.CookieName); } else { request.Headers.Add(Web.CustomHeaders.SecureSession, SessionCookie.Value); } if (ClientApplicationNameProvider != null) { request.Headers[Web.CustomHeaders.ApplicationName] = ClientApplicationNameProvider.GetApplicationName(); } return(request); }
/// <summary> /// Get an HttpWebRequest for the specified server type of the specified className /// </summary> /// <param name="verb"></param> /// <param name="className"></param> /// <param name="methodName"></param> /// <param name="queryStringParameters"></param> /// <returns></returns> protected virtual internal HttpWebRequest GetServiceProxyRequest(ServiceProxyVerbs verb, string className, string methodName, string queryStringParameters = "") { string namedOrNumbered = this.Numbered ? "&numbered=1" : "&named=1"; string methodUrl = MethodUrlFormat.NamedFormat(new { BaseAddress = BaseAddress, Verb = verb, ClassName = className, MethodName = methodName, Format = Format, Parameters = queryStringParameters, NamedOrNumberd = namedOrNumbered }); HttpWebRequest request = (HttpWebRequest)WebRequest.Create(methodUrl); request.CookieContainer = Cookies ?? new CookieContainer(); request.UserAgent = UserAgent; Headers.AllKeys.Where(k => !k.Equals("User-Agent")).Each(key => { request.Headers.Add(key, Headers[key]); }); request.Proxy = null; request.Method = verb.ToString(); if (!string.IsNullOrEmpty(Referer)) { request.Referer = Referer; } return(request); }
private void GetQueryStringAndVerb(string methodName, object[] parameters, out string queryStringParameters, out ServiceProxyVerbs verb) { queryStringParameters = Numbered ? ParametersToQueryString(parameters) : ParametersToQueryString(NameParameters(methodName, parameters)); verb = queryStringParameters.Length > 2048 ? ServiceProxyVerbs.POST : ServiceProxyVerbs.GET; }
/// <summary> /// Get an HttpWebRequest for the specified server generic type ST /// </summary> /// <typeparam name="ST">The server type that will execute the request</typeparam> /// <param name="verb"></param> /// <param name="methodName"></param> /// <param name="queryStringParameters"></param> /// <returns></returns> protected internal HttpWebRequest GetServiceProxyRequest <ST>(ServiceProxyVerbs verb, string methodName, string queryStringParameters = "") { return(GetServiceProxyRequest(verb, typeof(ST).Name, methodName, queryStringParameters)); }