Object HttpMessage
http Basic message object
Inheritance
constant
TEXT
Specify message type 1, which represents a text type
1const HttpMessage.TEXT = 1;
BINARY
Specify message type 2, which represents a binary type
1const HttpMessage.BINARY = 2;
Member attributes
protocol
String, protocol version information, the allowed format is: HTTP/#.#
1String HttpMessage.protocol;
headers
HttpCollection, Included in the message http The container of the message header, read-only attribute
1readonly HttpCollection HttpMessage.headers;
keepAlive
Boolean, query and set whether to keep the connection
1Boolean HttpMessage.keepAlive;
upgrade
Boolean, query and set whether it is an upgrade agreement
1Boolean HttpMessage.upgrade;
maxHeadersCount
Integer, query and set the maximum number of request headers, the default is 128
1Integer HttpMessage.maxHeadersCount;
maxBodySize
Integer, query and set the maximum size of the body, in MB, the default is 64
1Integer HttpMessage.maxBodySize;
socket
Stream, Query the source socket of the current object
1readonly Stream HttpMessage.socket;
value
String, the basic content of the message
1String HttpMessage.value;
params
NArray, the basic parameters of the message
1readonly NArray HttpMessage.params;
type
Integer, message type
1Integer HttpMessage.type;
data
Value, query the data of the message, this attribute will return different data according to the content-type, when it is text, it returns the text, which is json When returning json, Other times return to binary
1readonly Value HttpMessage.data;
body
SeekableStream, The stream object that contains the data part of the message
1SeekableStream HttpMessage.body;
length
Long, the length of the data part of the message
1readonly Long HttpMessage.length;
stream
Stream, Query the stream object when the message readFrom
1readonly Stream HttpMessage.stream;
lastError
String, query and set the last error of message processing
1String HttpMessage.lastError;
Member function
hasHeader
Check whether there is a message header with the specified key value
1Boolean HttpMessage.hasHeader(String name);
Call parameters:
- name: String, specify the key value to be checked
Return result:
- Boolean, Returns whether the key value exists
firstHeader
Query the first message header of the specified key value
1String HttpMessage.firstHeader(String name);
Call parameters:
- name: String, specify the key value to be queried
Return result:
- String, Returns the value corresponding to the key value, if it does not exist, returns undefined
allHeader
Query all message headers of the specified key value
1NObject HttpMessage.allHeader(String name = "");
Call parameters:
- name: String, specify the key value to be queried, pass an empty string to return the result of all key values
Return result:
- NObject, Returns an array of all values corresponding to the key value, if the data does not exist, returns null
addHeader
Add a message header, adding data does not modify the message header of the existing key value
1HttpMessage.addHeader(Object map);
Call parameters:
- map: Object, specify the key-value data dictionary to be added
Add a set of message headers with a specified name, adding data does not modify the message headers of the existing key value
1
2HttpMessage.addHeader(String name,
Array values);
Call parameters:
- name: String, specify the key value to be added
- values: Array, specify a set of data to be added
Add a message header, adding data does not modify the message header of the existing key value
1
2HttpMessage.addHeader(String name,
String value);
Call parameters:
- name: String, specify the key value to be added
- value: String, specify the data to be added
setHeader
Set a message header, the setting data will modify the first value corresponding to the key value, and clear the remaining message headers with the same key value
1HttpMessage.setHeader(Object map);
Call parameters:
- map: Object, specify the key-value data dictionary to be set
Set a set of message headers with a specified name, the setting data will modify the value corresponding to the key value, and clear the rest of the message headers with the same key value
1
2HttpMessage.setHeader(String name,
Array values);
Call parameters:
- name: String, specify the key value to be set
- values: Array, specify a set of data to be set
Set a message header, the setting data will modify the first value corresponding to the key value, and clear the remaining message headers with the same key value
1
2HttpMessage.setHeader(String name,
String value);
Call parameters:
- name: String, specify the key value to be set
- value: String, specify the data to be set
removeHeader
Delete all message headers of the specified key value
1HttpMessage.removeHeader(String name);
Call parameters:
- name: String, specify the key value to be deleted
read
Read the data of the specified size from the stream, this method is the alias of the corresponding method of body
1Buffer HttpMessage.read(Integer bytes = -1) async;
Call parameters:
- bytes: Integer, specify the amount of data to be read, the default is to read a random size data block, the size of the data read depends on the device
Return result:
- Buffer, Return the data read from the stream, if there is no data to read, or the connection is interrupted, then return null
readAll
Read all remaining data from the stream, this method is an alias of the corresponding method of body
1Buffer HttpMessage.readAll() async;
Return result:
- Buffer, Return the data read from the stream, if there is no data to read, or the connection is interrupted, then return null
write
Write the given data, this method is the alias of the corresponding method of body
1HttpMessage.write(Buffer data) async;
Call parameters:
- data: Buffer, Given the data to be written
json
Write the given data in JSON encoding
1Value HttpMessage.json(Value data);
Call parameters:
- data: Value, given the data to be written
Return result:
- Value, This method will not return data
Parse the data in the message in JSON encoding
1Value HttpMessage.json();
Return result:
- Value, Return the parsed result
pack
by msgpack Encode to write the given data
1Value HttpMessage.pack(Value data);
Call parameters:
- data: Value, given the data to be written
Return result:
- Value, This method will not return data
by msgpack Encoding and parsing the data in the message
1Value HttpMessage.pack();
Return result:
- Value, Return the parsed result
end
Set the end of the current message processing,Chain The processor does not continue subsequent transactions
1HttpMessage.end();
isEnded
Query whether the current message is over
1Boolean HttpMessage.isEnded();
Return result:
- Boolean, Return true at the end
clear
Clear the content of the message
1HttpMessage.clear();
sendTo
Send a formatted message to the given stream object
1HttpMessage.sendTo(Stream stm) async;
Call parameters:
- stm: Stream, Specify the stream object to receive formatted messages
readFrom
Read the formatted message from the given cache stream object, and parse the filling object
1HttpMessage.readFrom(Stream stm) async;
Call parameters:
- stm: Stream, Specify the stream object for reading formatted messages
toString
Returns the string representation of the object, generally returns "[Native Object]", the object can be re-implemented according to its own characteristics
1String HttpMessage.toString();
Return result:
- String, Returns the string representation of the object
toJSON
Returns the JSON format representation of the object, generally returns a collection of readable attributes defined by the object
1Value HttpMessage.toJSON(String key = "");
Call parameters:
- key: String, unused
Return result:
- Value, Returns a value containing JSON serializable