当前位置:首页 > python > 正文内容

flask的websocket的简单用例

root5年前 (2021-12-27)python1534

后端代码

flask Flask, render_template, request
flask_socketio SocketIO, emit

app (__name__, , ,
            , )
app.config[] socketio (app)
socketio.(app, )  //允许跨域
count ()
()()


(, )
()count
    count (,)
    (, {count, []})


(, )
()count
    count (,)
    (, {count,
                         []}, )


(, )
()()
    count
    count (, {count, })


(, )
()()


(, )
()()


__name__ socketio.(app, , , )


前端代码

index.html

<!DOCTYPE >
<>
<>
    <></>
    </>
    </>
    <></>
    <></>
    <></>
</>
<>
<></>

<>
    <><></></>
</>
<></>
<>
    </>
    </>
</>
<>
    </>
    </>
</>
<>
    <></>
    <></>
</>

<></>
<></>
</>
</>

./templates/index.js

$(document).ready(() {
    namespace ;

    socket io(namespace);
    $().click(() {
        socket.connect();
    });
    $().click(() {
        socket.disconnect();
    });
    socket.on(, () {
        alert();
    });
    socket.on(, () {
        socket.emit(, { data});
    });

    socket.on(, (msg, cb) {
        $().append(
            $()
                    .text(msg.count msg.data)
                    .html()
        );
        (cb) cb();
    });

    ping_pong_times [];
    start_time;
    window.setInterval(() {
        start_time Date().getTime();
        socket.emit();
    }, );

    socket.on(, () {
        latency Date().getTime() start_time;
        ping_pong_times.push(latency);
        ping_pong_times ping_pong_times.slice(); sum ;
        (i ; i ping_pong_times.length; i)
            sum ping_pong_times[i];
        $().text(
            Math.round((sum) ping_pong_times.length) );
    });

    $().submit((event) {
        socket.emit(, { data$().val() });
        ;
    });
    $().submit((event) {
        socket.emit(, { data$().val() });
        ;
    });
});

下面是代码

flask-socketio-main.zip

需要注意flask-socketio的版本

按照操作进行就可以了


参考

扫描二维码推送至手机访问。

版权声明:本文由一叶知秋发布,如需转载请注明出处。

本文链接:https://zhiqiu.top/?id=188

分享给朋友:

相关文章

python简单的加密解密

rsa 是非对称加密公钥加密,私钥解密pip install rsaimport rsa from binascii import b2a_hex, a2b_hex class&nb...

python os 模块文件常用操作

123456import os #回去当前文件路径os.path.realpath(__file__)#获取文件是否存在os.path.exists(filepath)#获取文件大小os.path.getsize(fil...

python跟pip不是同一个版本的坑

python执行默认是Python2.7但是pip默认确实pip3的用pip install 安装包只会安装到python3环境里面指回pip vim /usr/local/bin/pip把 第一行的#!/usr/bin...

python2的pip 不能使用或者使用总是报错

python2的pip 不能使用或者使用总是报错

python2.7   当然可能还有其他情况有的是pip版本升级过高,有的是pip有点问题无法执行pip的命令升级python2的 pip 一定要小心推荐命令:pip install --upgrad...

python 调用linux命令 subprocess.popen

import subprocesscommd = "echo 123"p1 = subprocess.Popen(commd, shell=True, stdout=subprocess.PIPE, stder...

python进行远程ssh连接的pexpect模块

from pexpect import pxssh s=pxssh.pxssh() s.login(host, user, password) s.sendline(cmd) s.p...