| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- import { PacificaWebSocketClient } from './src/exchanges/pacifica/PacificaWebSocketClient.js'
- /**
- * 简单的WebSocket连接测试
- * 不使用代理,直接连接到Pacifica WebSocket
- */
- async function testSimpleWebSocket() {
- console.log('🚀 开始简单WebSocket连接测试...\n')
- // 临时禁用代理进行测试
- const originalProxyHost = process.env.PROXY_HOST
- const originalProxyEnabled = process.env.PROXY_ENABLED
- delete process.env.PROXY_HOST
- delete process.env.PACIFICA_PROXY_HOST
- process.env.PROXY_ENABLED = 'false'
- const client = new PacificaWebSocketClient('wss://ws.pacifica.fi/ws')
- try {
- console.log('📡 尝试连接到 wss://ws.pacifica.fi/ws (无代理)...')
- await client.connect()
- console.log('✅ WebSocket连接成功!')
- console.log('📊 连接状态:', client.isConnectionOpen())
- console.log('📋 队列长度:', client.getQueueLength())
- // 发送ping测试
- console.log('\n💓 测试心跳...')
- await new Promise(resolve => setTimeout(resolve, 2000))
- console.log('✅ 心跳测试完成')
- // 测试一个简单的请求 (注意:这可能不是真实的API端点)
- console.log('\n🔄 测试基础请求...')
- try {
- const response = await client.get('/health', { timeout: 10000 })
- console.log('✅ 请求成功:', response)
- } catch (error: any) {
- console.log('⚠️ 请求失败(这是预期的,因为这不是真实API):', error.message)
- }
- } catch (error: any) {
- console.error('❌ WebSocket连接失败:', error.message)
- if (error.message.includes('404') || error.message.includes('426')) {
- console.log('💡 这可能是因为端点不支持直接连接或需要特殊握手')
- }
- } finally {
- // 恢复原始环境变量
- if (originalProxyHost) process.env.PROXY_HOST = originalProxyHost
- if (originalProxyEnabled) process.env.PROXY_ENABLED = originalProxyEnabled
- await client.close()
- console.log('\n🧹 连接已关闭')
- }
- console.log('\n✅ 简单WebSocket测试完成!')
- }
- // 运行测试
- if (import.meta.url === `file://${process.argv[1]}`) {
- testSimpleWebSocket().catch(error => {
- console.error('🚨 测试失败:', error)
- process.exit(1)
- })
- }
- export { testSimpleWebSocket }
|