Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在flask socket io中添加多个页面_Javascript_Html_Flask Socketio - Fatal编程技术网

Javascript 如何在flask socket io中添加多个页面

Javascript 如何在flask socket io中添加多个页面,javascript,html,flask-socketio,Javascript,Html,Flask Socketio,我使用flask_socketio创建了一个简单的聊天应用程序。该应用程序运行良好,但我还想在主聊天页面之前添加一个登录页面,该页面要求用户输入姓名和其他可以在聊天应用程序中使用的内容。请告诉我如何添加多个页面,可以在客户端由服务器操作 服务器代码- from flask import * from flask_socketio import SocketIO, send app = Flask(__name__) app.config['SECRET_KEY'] = 'mysecret' s

我使用flask_socketio创建了一个简单的聊天应用程序。该应用程序运行良好,但我还想在主聊天页面之前添加一个登录页面,该页面要求用户输入姓名和其他可以在聊天应用程序中使用的内容。请告诉我如何添加多个页面,可以在客户端由服务器操作

服务器代码-

from flask import *
from flask_socketio import SocketIO, send

app = Flask(__name__)
app.config['SECRET_KEY'] = 'mysecret'
socketio = SocketIO(app, cors_allowed_origins='*')

@app.route("/")
def home():
    return render_template("clint.html")

@socketio.on('message')
def handleMessage(msg):
    print('Message: ' + msg)
    
    send(msg, broadcast=True)

if __name__ == '__main__':
    socketio.run(app)
homepage.html-

<!DOCTYPE html>
<html lang="en">
<head>
    
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css" integrity="sha384-JcKb8q3iqJ61gNV9KGb8thSsNjpSL0n8PARn9HuZOnIxN0hoP+VmmDGMN5t9UJ0Z" crossorigin="anonymous">
    <style> 
        .centered {
        display: flex;
        align-items: center;
        justify-content: center;
        margin-top: 20%;
      }
    </style>

</head>



<body style="background-color: rgb(0, 0, 0);">
    
    <!-- navbar -->
    <nav class="navbar navbar-expand-lg navbar-light bg-light">
        <a class="navbar-brand" href="#">Chatbox</a>
        <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarNavDropdown" aria-controls="navbarNavDropdown" aria-expanded="false" aria-label="Toggle navigation">
          <span class="navbar-toggler-icon"></span>
        </button>
        <div class="collapse navbar-collapse" id="navbarNavDropdown">
          <ul class="navbar-nav">
            <li class="nav-item active">
              <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a>
            </li>
            <li class="nav-item">
              <a class="nav-link" href="#">Log out</a>
            </li>
            <li class="nav-item">
              <a class="nav-link" href="#">login</a>
            </li>
            <li class="nav-item dropdown">
              <a class="nav-link dropdown-toggle" href="#" id="navbarDropdownMenuLink" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
                Settings
              </a>
              <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
                <a class="dropdown-item" href="#">THEME</a>
                <a class="dropdown-item" href="#">Profile</a>
                <a class="dropdown-item" href="#">Help</a>
              </div>
            </li>
          </ul>
        </div>
      </nav>
      <!-- navbar -->
{%block mainbody%}
<form method="post">
    <div class="centered" >
        <button type="submit" style="width: 200px;height:100px" class="btn btn-light"><h4>Start Chat</h4> </button>
    </div>
</form>
{%endblock%}
<script src="https://code.jquery.com/jquery-3.5.1.slim.min.js" integrity="sha384-DfXdz2htPH0lsSSs5nCTpuj/zy4C+OGpamoFVy38MVBnE+IbbVYUew+OrCXaRkfj" crossorigin="anonymous"></script>
<script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.1/dist/umd/popper.min.js" integrity="sha384-9/reFTGAW83EW2RDu2S0VKaIzap3H66lZH81PoYlFhbGU+6BZp6G7niu735Sk7lN" crossorigin="anonymous"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/js/bootstrap.min.js" integrity="sha384-B4gt1jrGC7Jh4AgTPSdUtOBvfO8shuf57BaghqFfPlYxofvL8/KUEfYiJOMMV+rV" crossorigin="anonymous"></script>
</body>
</html>

文件
.居中{
显示器:flex;
对齐项目:居中;
证明内容:中心;
利润率最高:20%;
}
{%block mainbody%} 开始聊天 {%endblock%}
看看这个示例:,它在打开聊天室之前要求用户输入用户名和所需的聊天室。