gpt4 book ai didi

javascript - 运行此程序浏览器显示 "Upgrade Required"

转载 作者:行者123 更新时间:2023-11-30 20:47:49 26 4
gpt4 key购买 nike

所以我现在搜索了一个星期,尝试了其他帖子或论坛中的所有解决方案,仍然一无所获,是的,我需要帮助..拜托。

Node 是最新的,如果这很重要的话。供引用。 v9.4.0

如果你们还有什么需要知道的,请告诉我。

'use strict'

var EventEmitter = require('events').EventEmitter
var util = require('util')

var WebSocketServer = require('ws').Server

var CONNECTION_ERROR_LOG_RATE = 1000 * 60 * 60

var Browser = function () {
if (!(this instanceof Browser)) return new Browser()
EventEmitter.call(this)
this.wss = null
this.ws = null
this.lastConnectionErrorLog = null
}

util.inherits(Browser, EventEmitter)

Browser.prototype.listen = function listen (port) {
console.log('Listening on websocket port %d', port)
this.wss = new WebSocketServer({port, host: '127.0.0.1'})

var self = this
this.wss.on('connection', function (ws) {
self.ws = ws

ws.on('message', function (data) {
var res = JSON.parse(data)
self.emit('message', res)
})
self.lastConnectionErrorLog = null
self.emit('connected')
})
this.wss.on('close', function () {
self.emit('closed')
})
this.wss.on('error', function (err) {
self.emit('error', err)
})
}

Browser.prototype.isConnected = function isConnected () {
return !!this.ws
}

Browser.prototype.send = function send (req) {
if (!this.ws) {
var elapsed = this.lastConnectionErrorLog === null ||
Date.now() - this.lastConnectionErrorLog > CONNECTION_ERROR_LOG_RATE
if (elapsed) {
console.log('browser not connected')
this.lastConnectionErrorLog = Date.now()
}
return
}

var self = this
var message = JSON.stringify(req)
this.ws.send(message, function (err) {
if (err) {
var elapsed = self.lastConnectionErrorLog === null ||
Date.now() - self.lastConnectionErrorLog > CONNECTION_ERROR_LOG_RATE
if (elapsed) {
self.lastConnectionErrorLog = Date.now()
self.emit('messageError', err)
}
} else {
self.emit('messageSent')
}
})
}

module.exports = Browser

我是 Websockets/Node/Javascript 的新手,所以答案可能很简单..我提前道歉谢谢你

最佳答案

您看到的错误是因为您正在向 WebSockets 服务器发送非 WebSocket 请求(即来自 Web 浏览器的普通 HTTP 请求)。

要在浏览器中连接到 WebSockets 服务器,您需要使用 Javascript 中的 WebSocket 接口(interface)。

关于javascript - 运行此程序浏览器显示 "Upgrade Required",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48506922/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com