资料
flask 的网址 http://flask.pocoo.org/docs/0.10/installation/
英文文档 http://flask.pocoo.org/docs/0.10/
中文文档 http://dormousehole.readthedocs.org/en/latest/index.html
flask基于两个外部库,Werkzeug http://werkzeug.pocoo.org/ 以及jinjahttp://jinja.pocoo.org/ 。Werkzeug是一个WSGI规范的实用函数库。服务器和应用程序的接口,jinja是渲染模板的。python要求 2.6以上。
virtualenv http://liuzhijun.iteye.com/blog/1872241 ,这是python的虚拟机,用来拯救搭建不同的平台用不同的库需要不同的python的困扰(作者真是周到啊)
文件嵌入
flask里面的url_for()
网页端的js文件嵌入代码
<script type="text/javascript" src="{{url_for('static',filename='script/jquery-1.11.2.js')}}"></script>
然后文件本身存在 static文件夹下面的script子文件夹,文件名为jquery-1.11.1.js
AJAX交互
在网页端,用jquery进行交互的时候,
<script type=text/javascript> $SCRIPT_ROOT = {{ request.script_root|tojson|safe }};</script>
$.post($SCRIPT_ROOT+"/freworddb",{data:savedData,busid:dataroot},function(data,status){
console.log(status);
})
$SCRIPT_ROOT的定义照抄就行了,
其中,freworddb是路由,在python的app.route里面定义,见下面,第二个参数里面是要传送的数据,数据本身要是字符串格式,第三个参数是返回数据的处理函数,data是返回的数据,status是状态,如果成功了,是success,具体的情况可以再浏览器端 F12 network查看详细。
flask里面实现ajax交互,这个文章讲的是get方式的一个小demo
flask里面用GET协议的时候,
@app.route('/searchname',methods=['GET','POST'])
def searchname():
term=request.args.get("term",'')
city=request.args.get("city",'')
a=searchnames(term,city)
return a
客户端使用的是request.args.get,
最前面要加上
from flask import request
如果用的是POST协议的话,
@app.route('/freworddb',methods=['GET','POST'])
def freword():
name=request.form["name"]
res=freworddb(name)
return res
服务器端使用的是 request.form,
几种HTTP服务器状态的意思
200成功
304未修改