Javascript示例
1. 建立Websocket實例
1
2
3
const socket = new WebSocket(
'wss://api.zzztech.com.tw/ws/v1/symbol/quote?wsToken=**********',
);
2. 建立後,於open事件中發送欲訂閱標的,event: 'subscribe'
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
// provider: (美股市場: "US", 台股市場: "Taiwan", 加密貨幣: "Binance")
socket.addEventListener('open', function (event) {
//訂閱美股蘋果 symbol: "AAPL"
socket.send(
JSON.stringify({
event: 'subscribe',
data: {symbol: 'AAPL', provider: 'US'},
}),
);
//訂閱台股台積電 symbol: "2330"
socket.send(
JSON.stringify({
event: 'subscribe',
data: {symbol: '2330', provider: 'Taiwan'},
}),
);
//訂閱比特幣 symbol: "BTCUSDT", 須帶上market區分合約/現貨市場,合約為 "FutureMarket"/現貨為"Client"
socket.send(
JSON.stringify({
event: 'subscribe',
data: {symbol: 'BTCUSDT', provider: 'Binance', market: 'Client'},
}),
);
});
3. 訂閱標的後,監聽'message'事件,即可獲得已訂閱商品即時行情
1
2
3
4
// Listen for messages
socket.addEventListener('message', function (event) {
console.log('Message from server ', event.data);
});
4. 可取消訂閱標的,即不會接收到伺服器發送之行情,下方為取消比特幣訂閱
1
2
3
4
5
6
7
// Unsubscribe
socket.send(
JSON.stringify({
type: 'unsubscribe',
data: {symbol: 'BTCUSDT', provider: 'Binance'}
})
);
5. 查看當前訂閱標的
1
2
3
4
5
6
// subscriptionList
socket.send(
JSON.stringify({
type: 'subscriptionList'
})
);