Option 是配置参数,对于不同类型的请求可以设置不同的配置。
参数
参数 | 类型 | 描述 |
headers | Record<string,string> | 请求头 |
protocol | string | 协议类型,支持 polling/websocket |
样例
// SocketIO APIimport socketio from 'pts/socketio';import { check, sleep } from 'pts';import util from 'pts/util';export default function () {const res = socketio.connect('http://localhost:8080', function (socket) {socket.on('open', () => console.log('connected'));socket.on('message', (data) => console.log('message received: ', data));socket.on('binaryMessage', (data) => console.log('binaryMessage received: ', data));socket.on('close', () => console.log('disconnected'));socket.setTimeout(function () {console.log('3 seconds passed, closing the socket');socket.close();}, 3000);// 设置定时任务socket.setTimeout(function () {socket.emit('message', 'hello');socket.emit('binaryMessage', util.base64Decoding('aGVsbG8=', 'std', 'b'));socket.emit('ackMessage', 'hello ack', function(msg) {console.log('ack message received: ', msg)})}, 500);// 设置定期执行的任务socket.setInterval(function(){socket.emit('message', 'interval message');}, 500);// 设置循环执行任务,socket/context 关闭自然退出socket.setLoop(function () {sleep(0.1);socket.emit('message', 'loop message');});}, {// 支持 polling、websocket 协议protocol:'websocket',headers: {token: 'xxx',}});check('status is 200', () => res.status === 200);}