基于Python的Flask框架制作动态网站-第一部分

Flask框架

WSGI(Web服务器网关接口Python Web Server Gateway Interface,缩写为WSGI)提供的接口虽然比HTTP接口高级了不少,但和Web App的处理逻辑比,还是比较低级,我们需要在WSGI接口之上能进一步抽象,让我们专注于用一个函数处理一个URL,至于URL到函数的映射,就交给Web框架来做

用Python开发一个Web框架十分容易,所以Python有上百个开源的Web框架。这里我们先不讨论各种Web框架的优缺点,直接选择一个比较流行的Web框架——Flask来使用

项目–聊天室

以下每一个程序都是独立可以运行的服务

第一步:启动服务器

启动服务,进入主页,显示欢迎光临。

from flask import Flask
app = Flask(__name__)

@app.route("/")
def index():
    return "

欢迎光临我的网站

"
app.run() # 启动服务器 # app.run(host="0.0.0.0", port=5001) # 设置更多参数-服务器

第二步:添加更多路由

网站不可能只有一个页,下面我们增加不同的路由页面

from flask import Flask
app = Flask(__name__)

@app.route("/")
def index():
    """首页"""
    return "

欢迎光临

发信息给某人可以这样: /USERNAME/MESSAGE

"
@app.route("/") def user(username): return "你好!" + username @app.route("//") def send_message(username, message): """通过路由设置:/人名称/信息内容 来实现发送信息给某人""" return "{0}: {1}".format(username, message) # 增加一个关于我们 /about app.run() # 启动服务器

第三步:保存信息

刚才我们发的消息都没有保存起来,下次打开网站消息就没有,怎么能聊天呢? 没有保存信息,我怎么能看到信息呢?所有一定要找个地方把信息保存起来。

from flask import Flask, redirect
from datetime import datetime
app = Flask(__name__)
messages = [] # 保存聊天信息到列表

def add_messages(username, message):
    # 添加消息,保存在列表里面
    now = datetime.now().strftime("%Y-%m-%d %H:%M:%S") # 记录时间:格式:00:00:00
    messages.append("({}) {}: {}".format(now, username, message))

def get_all_messages():
    """获取关于我的所有聊天信息`"""
    return "
"
.join(messages) @app.route("/") def index(): """首页""" return "

欢迎光临

发信息给某人可以这样: /USERNAME/MESSAGE

"
@app.route("/") def user(username): """显示所有消息""" return "

欢迎, {0}

{1}"
.format(username, get_all_messages()) @app.route("//") def send_message(username, message): """ 通过路由设置:/人名称/信息内容 来实现发送信息给某人 添加信息到列表里面,然后返回到用户页面 """ add_messages(username, message) return redirect("/" + username) app.run(host="0.0.0.0", port=5000) # 启动服务器

你可能感兴趣的:(Python,python,flask,后端)