public HttpWebRequest Create(string uri) { FormData formData = new FormData(false, "Email", _username, "Passwd", _password, "service", _service, "source", _source); if (_captchaToken != null && _captchaValue != null) { formData.Add("logintoken", _captchaToken); formData.Add("logincaptcha", _captchaValue); } HttpWebRequest request = HttpRequestHelper.CreateHttpWebRequest(uri, true); request.Method = "POST"; request.ContentType = "application/x-www-form-urlencoded"; using (Stream inStream = formData.ToStream()) using (Stream outStream = request.GetRequestStream()) StreamHelper.Transfer(inStream, outStream); return(request); }
public override void AddData(FormData data) { if (Value == null) data.Add(Name, string.Empty); else data.Add(Name, Value); }
public async Task <FormData> Convert(IFormCollection form) { var multipartFormData = new FormData(); foreach (IFormFile file in form.Files) { var name = UnquoteToken(file.Name); string fileName = FixFilename(file.FileName); string mediaType = file.ContentType; var stream = file.OpenReadStream(); using (StreamReader fileReader = new StreamReader(stream)) { //@Todo : In the future make the encoding as a setting //byte[] buffer = Encoding.UTF8.GetBytes(await fileReader.ReadToEndAsync()); byte[] buffer = await ReadAllBytes(stream); if (buffer.Length >= 0) { multipartFormData.Add(name, new HttpFile(fileName, mediaType, buffer)); } } } foreach (var key in form.Keys) { var name = UnquoteToken(key); var data = form[key]; multipartFormData.Add(name, data); } return(multipartFormData); }
public async Task <FormData> Convert(MultipartMemoryStreamProvider multipartProvider) { var multipartFormData = new FormData(); foreach (var file in multipartProvider.Contents.Where(x => IsFile(x.Headers.ContentDisposition))) { var name = UnquoteToken(file.Headers.ContentDisposition.Name); string fileName = FixFilename(file.Headers.ContentDisposition.FileName); string mediaType = file.Headers.ContentType.MediaType; using (var stream = await file.ReadAsStreamAsync()) { byte[] buffer = ReadAllBytes(stream); if (buffer.Length > 0) { multipartFormData.Add(name, new HttpFile(fileName, mediaType, buffer)); } } } foreach (var part in multipartProvider.Contents.Where(x => x.Headers.ContentDisposition.DispositionType == "form-data" && !IsFile(x.Headers.ContentDisposition))) { var name = UnquoteToken(part.Headers.ContentDisposition.Name); var data = await part.ReadAsStringAsync(); multipartFormData.Add(name, data); } return(multipartFormData); }
public bool Login(ref Accounts acc, string captcha) { string get = http.Request("GET", "https://manager.sunfrogshirts.com/Login.cfm"); Match m = Regex.Match(get, "name=\"botchecker\" value=\"(.*?)\""); if (!m.Success) { return(false); } FormData form = new FormData(); form.Add(new FormElement("username", acc.EMAIL)); form.Add(new FormElement("password", acc.PASS)); form.Add(new FormElement("g-recaptcha-response", captcha)); form.Add(new FormElement("login", "")); form.Add(new FormElement("botchecker", m.Groups[1].Value)); Console.WriteLine(form.ToPostString()); string html = http.Request("POST", "https://manager.sunfrogshirts.com/Login.cfm", null, form.GetData(), false); var headers = http.GetResponseHeaders(); Console.WriteLine(headers.ToString()); if (!headers.ToString().Contains("dashboard")) { return(false); } return(true); }
public override void AddData(FormData data) { if (Value == null) { data.Add(Name, string.Empty); } else { data.Add(Name, Value); } }
private FormData PrepareFormDataModel() { var model = new FormData(); model.Add("first", "111"); model.Add("second", "string"); model.Add("file1", new HttpFile("photo2.png", "image/png", new byte[] { 4, 3, 24, 23 })); model.Add("file2", new HttpFile("photo3.jpg", "image/jpg", new byte[] { 80, 31, 12, 3, 78, 45 })); return(model); }
public override void AddData(FormData data) { if (Name != null) { data.Add(Name + ".x", "1"); data.Add(Name + ".y", "1"); } else { data.Add("x", "1"); data.Add("y", "1"); } base.AddData(data); }
/// <summary> /// Read the non-file contents as form data. /// </summary> /// <returns></returns> public override async Task ExecutePostProcessingAsync() { // Find instances of non-file HttpContents and read them asynchronously // to get the string content and then add that as form data for (int index = 0; index < Contents.Count; index++) { if (_isFormData[index]) { HttpContent formContent = Contents[index]; // Extract name from Content-Disposition header. We know from earlier that the header is present. ContentDispositionHeaderValue contentDisposition = formContent.Headers.ContentDisposition; string formFieldName = UnquoteToken(contentDisposition.Name) ?? String.Empty; // Read the contents as string data and add to form data string formFieldValue = await formContent.ReadAsStringAsync(); FormData.Add(formFieldName, formFieldValue); } else { _fileContents.Add(Contents[index]); } } }
public override async Task ExecutePostProcessingAsync() { for (var index = 0; index < Contents.Count; index++) { HttpContent formContent = Contents[index]; if (_isFormData[index]) { // Field string formFieldName = UnquoteToken(formContent.Headers.ContentDisposition.Name) ?? string.Empty; string formFieldValue = await formContent.ReadAsStringAsync(); FormData.Add(formFieldName, formFieldValue); } else { // File var file = new MultipartFormFile { Name = UnquoteToken(formContent.Headers.ContentDisposition.FileName), Length = formContent.Headers.ContentLength, MediaType = formContent.Headers.ContentType.MediaType, Stream = await formContent.ReadAsStreamAsync() }; FileStreams.Add(file); } } }
public override void AddData(FormData data) { if (Name != null) { data.Add(Name, Value); } }
/// <summary> /// Read the non-file contents as form data. /// </summary> /// <returns></returns> public override async Task ExecutePostProcessingAsync() { // Find instances of non-file HttpContents and read them asynchronously // to get the string content and then add that as form data for (int index = 0; index < Contents.Count; index++) { //{form-data; name="Image"; filename="aarvi01-gps-vehicle-tracking-system-with-1-year-warranty-500x500.jpg"} string formFieldName = string.Empty; if (_isFormData[index]) { HttpContent formContent = Contents[index]; // Extract name from Content-Disposition header. We know from earlier that the header is present. ContentDispositionHeaderValue contentDisposition = formContent.Headers.ContentDisposition; formFieldName = UnquoteToken(contentDisposition.Name) ?? String.Empty; // Read the contents as string data and add to form data string formFieldValue = await formContent.ReadAsStringAsync(); FormData.Add(formFieldName, formFieldValue); } else { HttpContent formContent = Contents[index]; ContentDispositionHeaderValue contentDisposition = formContent.Headers.ContentDisposition; formFieldName = UnquoteToken(contentDisposition.Name) ?? String.Empty; Files.Add(formFieldName, Contents[index]); } } }
public override async Task ExecutePostProcessingAsync() { for (int index = 0; index < Contents.Count; ++index) { HttpContent formContent = Contents[index]; if (isFormData[index]) { // Field string formFieldName = UnquoteToken(formContent.Headers.ContentDisposition.Name) ?? string.Empty; string formFieldValue = await formContent.ReadAsStringAsync(); FormData.Add(formFieldName, formFieldValue); } else { // File FileInfo fileInfo = new FileInfo(); fileInfo.FileName = UnquoteToken(formContent.Headers.ContentDisposition.FileName); fileInfo.Content = await formContent.ReadAsByteArrayAsync(); fileInfo.FileSize = (long)formContent.Headers.ContentLength; fileInfo.ContentType = formContent.Headers.ContentType.MediaType; FileData.Add(fileInfo); } } }
public override async Task ExecutePostProcessingAsync() { for (var index = 0; index < Contents.Count; index++) { HttpContent formContent = Contents[index]; if (_isFormData[index]) { // Field string formFieldName = UnquoteToken(formContent.Headers.ContentDisposition.Name) ?? string.Empty; string formFieldValue = await formContent.ReadAsStringAsync(); FormData.Add(formFieldName, formFieldValue); } else { // File string fileName = UnquoteToken(formContent.Headers.ContentDisposition.FileName); if (!string.IsNullOrEmpty(fileName)) { Stream stream = await formContent.ReadAsStreamAsync(); FileStreams.Add(fileName, stream); } } } }
public RestRequest AddFormData(string key, byte[] data, string fileName) { if (!string.IsNullOrEmpty(key) && data != null) { FormData.Add(new ByteArrayContent(data), key, fileName); } return(this); }
public RestRequest AddFormData(byte[] data) { if (data != null) { FormData.Add(new ByteArrayContent(data)); } return(this); }
public RestRequest AddFormData(string key, string value) { if (!string.IsNullOrWhiteSpace(key) && !string.IsNullOrWhiteSpace(value)) { FormData.Add(new StringContent(value), key); } return(this); }
public RestRequest AddFormData(string key, Stream data) { if (!string.IsNullOrEmpty(key) && data != null) { FormData.Add(new StreamContent(data), key); } return(this); }
public RestRequest AddFormData(Stream data) { if (data != null) { FormData.Add(new StreamContent(data)); } return(this); }
public override void AddData(FormData data) { foreach (Option opt in options) { if (opt.Selected) data.Add(Name, opt.Value); } }
public async Task Resolves_explicit_child_validator_for_collection() { var formData = new FormData(); formData.Add("Children[0].Name", null); var result = await _client.GetErrors("InjectsExplicitChildValidatorCollection", formData); result.IsValidField("Children[0].Name").ShouldBeFalse(); result.GetError("Children[0].Name").ShouldEqual("NotNullInjected"); }
public override async Task ExecutePostProcessingAsync() { foreach (HttpContent httpContent in Contents.Where((HttpContent content, int index) => _isFormData[index])) { ContentDispositionHeaderValue contentDisposition = httpContent.Headers.ContentDisposition; string name = contentDisposition.Name.Unquote() ?? string.Empty; string value = await httpContent.ReadAsStringAsync(); FormData.Add(name, value); } ; }
private void ParseFormDataParameters(string formData) { if (!string.IsNullOrEmpty(formData)) { string[] parameters = formData.Split('&').ToArray(); foreach (string parameter in parameters) { FormData.Add(parameter.Split('=')[0], parameter.Split('=')[1]); } } }
private void ParseFormData(string requestBody) { if (!string.IsNullOrWhiteSpace(requestBody) && requestBody.Contains('=')) { string[] bodyParameters = requestBody.Split('&'); foreach (var bodyParameter in bodyParameters) { string[] bodyParameterArgs = bodyParameter.Split('='); string bodyParameterkey = bodyParameterArgs[0]; FormData.Add(bodyParameterkey, bodyParameter); } } }
private void ParseFormDataParameters(string formData) { if (!string.IsNullOrEmpty(formData)) { string[] parameters = formData.Split('&').ToArray(); foreach (string parameter in parameters) { string decoded = WebUtility.UrlDecode(parameter.Split('=')[1]); FormData.Add(parameter.Split('=')[0], decoded); } } }
public void AppendForm() { var form = new FormData(); form.Add("a", "1"); Assert.Equal("a=1", form.ToString()); form.Add("b", "2"); Assert.Equal("a=1&b=2", form.ToString()); }
public virtual HttpRequestBuilder AddFormParameter(string key, object value) { if (Method != HttpMethod.POST) { throw new NotSupportedException("HttpRequest Method must be POST to add FormParameter."); } FormData.Add(new HttpFormData { Name = key, ContentData = Encoding.UTF8.GetBytes(value.ToString()) }); return(this); }
public virtual HttpRequestBuilder AddFormParameter(string key, object value) { if (Method != HttpMethod.POST) { throw new NotSupportedException("HttpRequest Method must be POST to add FormParameter."); } FormData.Add(new HttpFormData { Name = key, ContentData = Encoding.UTF8.GetBytes(Convert.ToString(value, System.Globalization.CultureInfo.InvariantCulture)) }); return(this); }
private void ParseFormData(string requestBody) { if (!string.IsNullOrWhiteSpace(requestBody) && requestBody.Contains('=')) { var bodyParameters = requestBody.Split('&') .Select(p => WebUtility.UrlDecode(p)); foreach (var bodyParameter in bodyParameters) { string[] bodyParameterArgs = bodyParameter.Split('=', 2); string bodyParameterkey = bodyParameterArgs[0]; string bodyParameterValue = bodyParameterArgs[1]; FormData.Add(bodyParameterkey, bodyParameterValue); } } }
private void ParseFormDataParameters(string formData) { if (string.IsNullOrEmpty(formData)) { return; } string[] formDataParams = formData.Split(HttpRequestParameterSeparator); foreach (var formDataParameter in formDataParams) { string[] parameterArguments = formDataParameter .Split(HttpRequestParameterNameValueSeparator, StringSplitOptions.RemoveEmptyEntries); if (this.FormData.ContainsKey(parameterArguments[0])) { if (this.FormData[parameterArguments[0]] is string || !(this.FormData[parameterArguments[0]] is List <string>)) { List <string> collection = new List <string> { this.FormData[parameterArguments[0]].ToString() }; this.FormData[parameterArguments[0]] = collection; } if (parameterArguments.Length >= 2) { ((List <string>)FormData[parameterArguments[0]]) .Add(HttpUtility.UrlDecode(parameterArguments[1])); } else { ((List <string>)FormData[parameterArguments[0]]).Add(null); } } else { if (parameterArguments.Length >= 2) { FormData.Add(parameterArguments[0], HttpUtility.UrlDecode(parameterArguments[1])); } else { FormData.Add(parameterArguments[0], null); } } } }
private void ParseFormDataParameters(string formData) { if (string.IsNullOrEmpty(formData)) { return; } string[] formDataParams = formData.Split(HttpRequestParameterSeparator); foreach (string formDataParameter in formDataParams) { string[] parameterArguments = formDataParameter.Split(HttpRequestParameterNameValueSeparator, StringSplitOptions.RemoveEmptyEntries); FormData.Add(parameterArguments[0], parameterArguments[1]); } }
public virtual HttpRequestBuilder AddFormUpload(string name, string fileName, byte[] data, string contentType = "application/octet-stream") { if (Method != HttpMethod.POST) { throw new NotSupportedException("HttpRequest Method must be POST to add FormUpload."); } FormData.Add(new HttpFormData { Name = name, FileName = fileName, ContentData = data, ContentType = contentType }); return(this); }
public RestRequest AddFormData(string key, Stream data, string fileName, string contentType = null) { if (!string.IsNullOrEmpty(key) && data != null) { var content = new StreamContent(data); if (!string.IsNullOrEmpty(contentType)) { if (System.Net.Http.Headers.MediaTypeHeaderValue.TryParse(contentType, out System.Net.Http.Headers.MediaTypeHeaderValue mediaType)) { content.Headers.ContentType = mediaType; } } FormData.Add(content, key, HttpUtility.UrlEncode(fileName)); } return(this); }
public override void AddData(FormData data) { if (Name != null) data.Add(Name, Value); }