Python flask实战订餐系统微信小程序-10链接管理器和链接管理器的初步实现

网友投稿 261 2022-11-29

Python flask实战订餐系统微信小程序-10链接管理器和链接管理器的初步实现

一、链接管理器

​​url_for​​

链接统一管理的好处:当项目庞大的时候,使用统一管理应对变更的能力就会更强。

from flask import Flask, url_forapp = Flask(__name__)@app.route('/')def hello_world(): url = url_for("index") return 'Hello World' + url@app.route('/api')def index(): return 'Index Page'@app.route('/api/hello')def hello(): return 'Hello World'if __name__ == '__main__': app.run()

可以看到​​url_for​​​可以​​将函数的名称转化为url的地址​​。

創建2个​​Python​​文件夹:

创建​​UrlManager.py​​管理类用作链接的管理:

class UrlManager(object): @staticmethod def buildUrl(path): return path @staticmethod def buildStaticUrl(path): return path

引入

from flask import Flask, url_forfrom common.libs import UrlManager# from xuhss import route_xuhssapp = Flask(__name__)# app.register_blueprint(route_xuhss, url_prefix="/xuhss")@app.route('/')def hello_world(): url = url_for("index") url_1 = UrlManager.UrlManager.buildUrl("/api") return "Hello World,url:%s,url1:%s" % (url, url_1)

二、版本管理

每次将开发代码发布到服务器时,不管是后端代码和前端代码都有版本的概念,浏览器本身有缓存的机制 ,如果静态文件不加特殊的标识,前端的静态文件是无法再次获取的。用户看到的仍是缓存的文件,用户看到的不是你看到的。所以才需要版本管理。

每次发布都有一个版本号, 202207121900、202207122000

每一次无论是通过后端的头部,希望知道用户返回的是哪个版本,并且静态文件可以同时获取,所以我们会在静态文件后面加上version字段:

class UrlManager(object): @staticmethod def buildUrl(path): return path @staticmethod def buildStaticUrl(path): path = path + "?ver=" + "202207121900" return UrlManager.buildUrl(path)

调用:

from flask import Flask, url_forfrom common.libs import UrlManagerapp = Flask(__name__)@app.route('/')def hello_world(): url = url_for("index") url_1 = UrlManager.UrlManager.buildUrl("/api") url_2 = UrlManager.UrlManager.buildStaticUrl("/css/bootstrap.css") return "Hello World,url:%s,url1:%s,url2:%s" % (url, url_1, url_2)

這就是版本管理和鏈接管理統一的必要性。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:解决Windows端口占用问题(port is already in use)
下一篇:java基于jdbc实现简单学生管理系统
相关文章

 发表评论

暂时没有评论,来抢沙发吧~