Chilkat C# HttpRequest Class Reference
HttpRequest
Represents a complete HTTP request.
Object Creation
(C#)
Chilkat.HttpRequest obj = new Chilkat.HttpRequest();
(VB.NET)
Dim obj As New Chilkat.HttpRequest()
Properties
public string Charset {get; set; }
Controls the character encoding used for HTTP request parameters for POST requests. The default value is "utf-8". The charset should match the charset expected by the form target.
public string ContentType {get; set; }
To be documented soon...
public string EntireHeader {get; set; }
To be documented soon...
public string HttpVerb {get; set; }
To be documented soon...
public string HttpVersion {get; set; }
The HTTP version in the request header. Defaults to "1.1".
public string LastErrorHtml {get; }
Error information in HTML format for the last method called.
public string LastErrorText {get; }
Error information in plain-text format for the last method called.
public string LastErrorXml {get; }
Error information in XML format for the last method called.
public int NumHeaderFields {get; }
Returns the number of request header fields.
public int NumParams {get; }
Returns the number of query parameters.
public string Path {get; set; }
The path of the resource requested. A path of "/" indicates the default document for a domain.
public bool SendCharset {get; set; }
Controls whether the charset is explicitly included in the content-type header field of the HTTP POST request.
Methods
public bool AddBytesForUpload(string name, string remoteFileName, byte[] byteData);
Adds a file to an upload request where the contents of the file come from an in-memory byte array. To create a file upload request, call UseUpload and then call AddBytesForUpload, AddStringForUpload, or AddFileForUpload for each file to be uploaded.
name is an arbitrary name. (In HTML, it is the form field name of the input tag.)
remoteFileName is the name of the file to be created on the HTTP server.
byteData contains the contents (bytes) to be uploaded.
public bool AddBytesForUpload2(string name, string remoteFileName, byte[] byteData, string contentType);
Same as AddBytesForUpload, but allows the Content-Type header field to be directly specified. (Otherwise, the Content-Type header is automatically determined based on the remoteFileName's file extension.)
public bool AddFileForUpload(string name, string filePath);
Adds a file to an upload request. To create a file upload request, call UseUpload and then call AddFileForUpload, AddBytesForUpload, or AddStringForUpload for each file to be uploaded. This method does not read the file into memory. When the upload occurs, the data is streamed directly from the file, thus allowing for very large files to be uploaded without consuming large amounts of memory.
name is an arbitrary name. (In HTML, it is the form field name of the input tag.)
filePath is the path to an existing file in the local filesystem.
public bool AddFileForUpload2(string name, string filePath, string contentType);
Same as AddFileForUpload, but allows the Content-Type header field to be directly specified. (Otherwise, the Content-Type header is automatically determined based on the file extension.)
name is an arbitrary name. (In HTML, it is the form field name of the input tag.)
filePath is the path to an existing file in the local filesystem.
public void AddHeader(string name, string value);
Adds a request header to the HTTP request. If a header having the same field name is already present, this method replaces it. (C#) Adding Cookies to an HTTP Request (PowerShell) Adding Cookies to an HTTP Request
public void AddParam(string name, string value);
Adds a request query parameter (name/value pair) to the HTTP request. The name and value strings passed to this method should not be URL encoded.
public bool AddStringForUpload(string name, string filename, string strData, string charset);
Same as AddFileForUpload, but the upload data comes from an in-memory string instead of a file.
public bool AddStringForUpload2(string name, string filename, string strData, string charset, string contentType);
Same as AddStringForUpload, but allows the Content-Type header field to be directly specified. (Otherwise, the Content-Type header is automatically determined based on the ARG2's file extension.)
public string GenerateRequestText();
Returns the request text that would be sent if Http.SynchronousRequest was called. Returns a null on failure
public string GetHeaderField(string name);
Returns the value of a request header field. Returns a null on failure
public string GetHeaderName(int index);
Returns the Nth request header field name. Indexing begins at 0, and the number of request header fields is specified by the NumHeaderFields property. Returns a null on failure
public string GetHeaderValue(int index);
Returns the Nth request header field value. Indexing begins at 0, and the number of request header fields is specified by the NumHeaderFields property. Returns a null on failure
public string GetParam(string name);
Returns a request query parameter value by name. Returns a null on failure
public string GetParamName(int index);
Returns the Nth request query parameter field name. Indexing begins at 0, and the number of request query parameter fields is specified by the NumParams property. Returns a null on failure
public string GetParamValue(int index);
Returns the Nth request query parameter field value. Indexing begins at 0, and the number of request query parameter fields is specified by the NumParams property. Returns a null on failure
public string GetUrlEncodedParams();
To be documented soon. Returns a null on failure
public bool LoadBodyFromBytes(byte[] byteData);
The HTTP protocol is such that all HTTP requests are MIME. For non-multipart requests, this method may be called to set the MIME body of the HTTP request to the exact contents of the byteData.
Note: A non-multipart HTTP request consists of (1) the HTTP start line, (2) MIME header fields, and (3) the MIME body. This method sets the MIME body.
public bool LoadBodyFromFile(string filePath);
The HTTP protocol is such that all HTTP requests are MIME. For non-multipart requests, this method may be called to set the MIME body of the HTTP request to the exact contents of filePath.
Note: A non-multipart HTTP request consists of (1) the HTTP start line, (2) MIME header fields, and (3) the MIME body. This method sets the MIME body.
public bool LoadBodyFromString(string bodyStr, string charset);
The HTTP protocol is such that all HTTP requests are MIME. For non-multipart requests, this method may be called to set the MIME body of the HTTP request to the exact contents of bodyStr.
Note: A non-multipart HTTP request consists of (1) the HTTP start line, (2) MIME header fields, and (3) the MIME body. This method sets the MIME body.
charset indicates the charset, such as "utf-8" or "iso-8859-1", to be used. The HTTP body will contain the bodyStr converted to this character encoding.
public void RemoveAllParams();
Removes all request parameters.
public void RemoveParam(string name);
Removes a single HTTP request parameter by name.
public bool SaveLastError(string filename);
Saves the last error information to an XML formatted file.
public void SetFromUrl(string url);
Parses a URL and sets the Path and query parameters (NumParams, GetParam, GetParamName, GetParamValue).
public bool StreamBodyFromFile(string filename);
To be documented soon...
public void UseGet();
Makes the HttpRequest a GET request.
public void UseHead();
Makes the HttpRequest a HEAD request.
public void UsePost();
Makes the HttpRequest a POST request that uses the "application/x-www-form-urlencoded" content type.
public void UsePostMultipartForm();
Makes the HttpRequest a POST request that uses the "multipart/form-data" content type.
public void UsePut();
Makes the HttpRequest a PUT request.
public void UseUpload();
Makes the HttpRequest a POST request that uses the "multipart/form-data" content type. To create a file upload request, call UseUpload and then call AddFileForUpload for each file to be uploaded.
public void UseUploadPut();
To be documented soon...
public void UseXmlHttp(string xmlBody);
Makes the HttpRequest a POST request using the "application/xml" content type. The request body is set to the XML string passed to this method.
|