与“ws://localhost:8000/”的 WebSocket 连接失败:WebSocket 握手期间出错:意外的响应代码:403

Sam*_*eer 1 javascript python sockets websocket

我正在尝试服务器和客户端之间的套接字连接。我的服务器在 python 中。我为后端创建了一个 Fast API WebSocket,Vue.js 位于客户端。后端服务器正在按预期运行。但是每当我尝试加载前端时,我总是在控制台中收到此错误。我搜索了很多网站,但没有找到合适的解决方案。有人可以建议如何解决此错误以通过套接字连接前端和后端吗?

这是我的代码

var socket = new WebSocket("ws://localhost:8000")
socket.onmessage = function(e){
console.log(e.data)
}

socket.onerror = function(e){
console.log(e.data)
}

------------------------------backend--------------------------
@app.websocket("/ws")
async def websocket_endpoint(websocket: WebSocket):
    await websocket.accept()
    while True:
        await websocket.send_text(f"Message text was: {data}")

Run Code Online (Sandbox Code Playgroud)

小智 5

代替:

var socket = new WebSocket("ws://localhost:8000")
Run Code Online (Sandbox Code Playgroud)

到:

var socket = new WebSocket("ws://localhost:8000/ws")
Run Code Online (Sandbox Code Playgroud)