物件Message
基礎訊息對象
Message 物件相容於mq各個模組,可用於建構自訂訊息處理系統,建立方法:
1
2var mq = require("mq");
var m = new mq.Message();
繼承關係
建構函數
Message
訊息物件建構函數
1new Message();
常量
TEXT
指定訊息類型1,代表一個文字類型
1const Message.TEXT = 1;
BINARY
指定訊息類型2,代表一個二進位類型
1const Message.BINARY = 2;
成員屬性
value
String, 訊息的基本內容
1String Message.value;
params
NArray, 訊息的基本參數
1readonly NArray Message.params;
type
Integer, 訊息類型
1Integer Message.type;
data
Value, 查詢訊息的數據,此屬性會根據content-type 傳回不同數據,當text 時,傳回文本,為json時返回json,其它時候返回二進制
1readonly Value Message.data;
body
SeekableStream, 包含訊息資料部分的流對象
1SeekableStream Message.body;
length
Long, 訊息資料部分的長度
1readonly Long Message.length;
stream
Stream, 查詢訊息readFrom 時的流對象
1readonly Stream Message.stream;
lastError
String, 查詢與設定訊息處理的最後錯誤
1String Message.lastError;
成員函數
read
從流內讀取指定大小的數據,此方法為body 對應方法的別名
1Buffer Message.read(Integer bytes = -1) async;
呼叫參數:
- bytes: Integer, 指定要讀取的資料量,預設為讀取隨機大小的資料區塊,讀取的資料尺寸取決於設備
回傳結果:
- Buffer, 傳回從流內讀取的數據,若無數據可讀,或連線中斷,則傳回null
readAll
從流內讀取剩餘的全部數據,此方法為body 對應方法的別名
1Buffer Message.readAll() async;
回傳結果:
- Buffer, 傳回從流內讀取的數據,若無數據可讀,或連線中斷,則傳回null
write
寫入給定的數據,此方法為body 對應方法的別名
1Message.write(Buffer data) async;
呼叫參數:
- data:Buffer, 給定要寫入的數據
json
以JSON 編碼寫入給定的數據
1Value Message.json(Value data);
呼叫參數:
- data: Value, 給定要寫入的數據
回傳結果:
- Value, 此方法不會傳回數據
以JSON 編碼解析訊息中的數據
1Value Message.json();
回傳結果:
- Value, 回傳解析的結果
pack
以msgpack編碼寫入給定的數據
1Value Message.pack(Value data);
呼叫參數:
- data: Value, 給定要寫入的數據
回傳結果:
- Value, 此方法不會傳回數據
以msgpack編碼解析訊息中的數據
1Value Message.pack();
回傳結果:
- Value, 回傳解析的結果
end
設定當前訊息處理結束,Chain處理器不再繼續後面的事務
1Message.end();
isEnded
查詢目前訊息是否結束
1Boolean Message.isEnded();
回傳結果:
- Boolean, 結束則回傳true
clear
清除訊息的內容
1Message.clear();
sendTo
發送格式化訊息到給定的流對象
1Message.sendTo(Stream stm) async;
呼叫參數:
- stm:Stream, 指定接收格式化訊息的流對象
readFrom
從給定的快取流對象讀取格式化訊息,並解析填充對象
1Message.readFrom(Stream stm) async;
呼叫參數:
- stm:Stream, 指定讀取格式化訊息的流對象
toString
傳回物件的字串表示,一般回傳"[Native Object]",物件可以根據自己的特性重新實現
1String Message.toString();
回傳結果:
- String, 傳回物件的字串表示
toJSON
傳回物件的JSON 格式表示,一般傳回物件定義的可讀屬性集合
1Value Message.toJSON(String key = "");
呼叫參數:
- key: String, 未使用
回傳結果:
- Value, 傳回包含可JSON 序列化的值