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' }) );