Spring Boot
[flask] 멀티채팅룸생성, 채팅창 상세화면 구현. flask chat serveer
도쿄아재
2023. 2. 8. 11:51
반응형
from flask import Flask, render_template, request
app = Flask(__name__)
rooms = []
@app.route("/")
def index():
return render_template("index.html")
@app.route("/create", methods=["POST"])
def create():
room_name = request.form.get("room_name")
if room_name in rooms:
return "Room name already exists, choose another name."
rooms.append(room_name)
return render_template("room.html", room_name=room_name)
@app.route("/room/<room_name>", methods=["GET", "POST"])
def room(room_name):
if request.method == "POST":
message = request.form.get("message")
# Do something with the message, e.g. save it to a database or broadcast it to other users in the room
pass
return render_template("room.html", room_name=room_name)
if __name__ == "__main__":
app.run(debug=True)
템플릿 index.html은 다음 HTML 코드를 사용하여 새 대화방을 만들 수 있습니다.
<form action="/create" method="post">
<input type="text" name="room_name">
<button type="submit">Create Room</button>
</form>
템플릿 room.html은 대화방에 대한 다음과 같은 HTML 코드를 가질 수 있습니다.
<h1>Chat Room - {{ room_name }}</h1>
<form action="/room/{{ room_name }}" method="post">
<input type="text" name="message">
<button type="submit">Send Message</button>
</form>
<div id="messages">
<!-- Display messages here -->
</div>
반응형