HttpClientRequest class

HTTP request for a client connection.

HTTP request for a client connection.

To set up a request, set the headers using the headers property provided in this class and write the data to the body of the request. HttpClientRequest is an IOSink. Use the methods from IOSink, such as writeCharCode(), to write the body of the HTTP request. When one of the IOSink methods is used for the first time, the request header is sent. Calling any methods that change the header after it is sent throws an exception.

When writing string data through the IOSink the encoding used is determined from the "charset" parameter of the "Content-Type" header.

HttpClientRequest request = ...
request.headers.contentType
    = new ContentType("application", "json", charset: "utf-8");
request.write(...);  // Strings written will be UTF-8 encoded.

If no charset is provided the default of ISO-8859-1 (Latin 1) is be used.

HttpClientRequest request = ...
request.headers.add(HttpHeaders.CONTENT_TYPE, "text/plain");
request.write(...);  // Strings written will be ISO-8859-1 encoded.

An exception is thrown if you use an unsupported encoding and the write() method being used takes a string parameter.

Implements

Constructors

HttpClientRequest()

Instance Properties

persistentConnection bool
read / write
Gets and sets the requested persistent connection state.
followRedirects bool
read / write
Set this property to true if this request should automatically follow redirects. The default is true.
maxRedirects int
read / write
Set this property to the maximum number of redirects to follow when followRedirects is true. If this number is exceeded the onError callback will be called with a RedirectException.
contentLength int
read / write
Gets and sets the content length of the request. If the size of the request is not known in advance set content length to -1, which is also the default.
bufferOutput bool
read / write
Get or set if the HttpClientRequest should buffer output.
method String
read-only
uri Uri
read-only
headers HttpHeaders
read-only
cookies List<Cookie>
read-only
done Future<HttpClientResponse>
read-only
connectionInfo HttpConnectionInfo
read-only
encoding Encoding Inherited
read / write
The Encoding used when writing strings. Depending on the underlying consumer this property might be mutable.

Instance Methods

close() → Future<HttpClientResponse>
Close the request for input. Returns the value of done.
add(List<int> data) → void Inherited
Adds data to the target consumer, ignoring encoding.
addError(error, [StackTrace stackTrace]) → void Inherited
Passes the error to the target consumer as an error event.
writeCharCode(int charCode) → void Inherited
Writes the charCode to this.
write(Object obj) → void Inherited
Converts obj to a String by invoking Object.toString and adds the encoding of the result to the target consumer.
addStream(Stream<List<int>> stream) → Future Inherited
Adds all elements of the given stream to this.
writeln([Object obj = ""]) → void Inherited
Converts obj to a String by invoking Object.toString and writes the result to this, followed by a newline.
flush() → Future Inherited
Returns a Future that completes once all buffered data is accepted by the to underlying StreamConsumer.
writeAll(Iterable objects, [String separator = ""]) → void Inherited
Iterates over the given objects and writes them in sequence.