Javascript 如何:使用websockify向HTTP api服务器发送Websocket请求

Javascript 如何:使用websockify向HTTP api服务器发送Websocket请求,javascript,websocket,websockify,Javascript,Websocket,Websockify,我有一个返回json数据的http API服务器和一个发出websockets请求的客户端,所以我决定在服务器和客户端之间进行通信 但我不知道如何获得websocket请求的结果 出于测试目的,我有一个简单的hello world python API服务器,带有Flask: import flask from flask import request, jsonify app = flask.Flask(__name__) app.config["DEBUG"] = True result =

我有一个返回json数据的http API服务器和一个发出websockets请求的客户端,所以我决定在服务器和客户端之间进行通信

但我不知道如何获得websocket请求的结果

出于测试目的,我有一个简单的hello world python API服务器,带有Flask:

import flask
from flask import request, jsonify
app = flask.Flask(__name__)
app.config["DEBUG"] = True
result = {"HelloWorld" : 42}
@app.route('/', methods=['GET'])
def home():
    return jsonify(result)
app.run(host="0.0.0.0")
在浏览器中测试,返回well{HelloWorld:42}

我运行websockify是为了打开一个与WebSocket通信的新端口,如下所示:websockify-verbose 0.0.0:5001 0.0.0.0:5000

我有一个javascript客户端,它试图发出如下websocket请求:

var socket = null;
socket = new WebSocket("ws://0.0.0.0:5001/");
socket.onerror = function(error) {
    console.error(error);
};
socket.onopen = function(event) {
    console.log("Connexion ok.");
    socket.send("GET / HTTP/1.1");
};
socket.onmessage = function(event) {
    console.log("Message: ", event.data);
};
socket.onclose = function(event) {
    console.log("Connexion ko.");
};
但当我尝试执行此脚本时,连接会在连接后立即关闭:

Connexion ok.
Connexion ko.

当我尝试发送websocket socket.sendGET/HTTP/1.1时,它似乎关闭了;因为如果我对这行进行注释,则连接将持续。

我认为您需要这样的东西:

websockify-详细5001本地主机:5000