我想连接到WS,但它返回错误
这是我的电话测试
test(`connection`, async () => {
const url = endpoint.webSocketURL;
const authToken = authorizationValue;
try {
const websocket = await connectToWebSocket(url, authToken);
expect(websocket.readyState,"Verify Trade Streaming connection").toBe(WebSocket.OPEN);
websocket.onmessage = (event) => {
const data = event.data;
console.log('Received message: ', data);
};
} catch (error) {
console.error("WebSocket connection failed: ", error);
}
});
字符串
这是我的WS类
import { WebSocket } from 'ws';
export const connectToWebSocket = (url: string, authToken: string): Promise<WebSocket> => {
return new Promise((resolve, reject) => {
const ws = new WebSocket(url);
ws.on('open', () => {
console.log('WebSocket connection established.');
const authMessage = JSON.stringify({ token: authToken });
ws.send(authMessage);
resolve(ws);
});
ws.on('message', (data) => {
console.log('Received message:', data);
});
ws.on('error', (error) => {
console.error('WebSocket error:', error.message);
reject(error);
});
ws.on('close', () => {
console.log('WebSocket connection closed.');
});
});
};
型
它给了我一个错误WebSocket连接已建立。WebSocket连接失败:参考错误:未定义WebSocket
1条答案
按热度按时间sbtkgmzw1#
您似乎正在使用“ws”库。但是,您的测试代码正在尝试使用未定义的本机WebSocket对象。
要解决这个问题,您应该从测试文件中的'ws'库导入WebSocket对象,就像您在WebSocket类中所做的那样。