上篇文章中有几个点不全面,在这里补充几点以及入门的几个小方法:
上篇文章中使用jsonify模块让网页直接显示json数据,返回的是二进制码,
如何解码呢?以及开启debug的几个小方法:
代码如下:
方法一:
在py文件中配置
# #解决中文乱码问题,将json数据内的中文正常显示 # app.config['JSON_AS_ASCII']=False # 开启debug模式 # app.config['DEBUG']=True
方法二:
从配置文件中加载配置,首先我们要创建一个配置文件如config.iti
# 从配置文件中加载配置 # app.config.from_pyfile('config.ini')
方法三:
创建一个配置文件的类
#建立一个配置类 class Config(object): DEBUG=True JSON_AS_ASCII=False #直接调用这个类名 app.config.from_object(Config)
方法四:
从环境变量中加载配置,首先新建一个环境变量 :
计算机 — 属性 —高级系统设置—环境变量—新建:
第一行为配置文件名,第二行为项目中配置文件的绝对路径:如配置文件名为 app_config
app.config.from_envvar('app_config') #注意:文件目录名为str
我们访问网页发送请求有很多方法比如:post get 等
#使用jsonify模块让网页直接显示json数据 @app.route('/json',methods=['POST'])
#这里也可以同时写多个请求方法 def re_json(): #定义好数据格式 json_dict={'id':10,'title':'flask的应用','content':'flask的json格式'} #使用jsonify来将定义好的数据转换成json格式,并返回给前端 return jsonify(json_dict)
但我们经常在发送请求和访问网页的时候抛出404 405 500 这样的错误,我们如何解决并捕获异常呢?
如下:
捕获405的异常
@app.errorhandler(405) def internal_sever_error(e): return '这个接口不能被get请求到,只能发生post请求' #这里为了给用户更好的体验,进行友情提示,我们把捕获到的错误用return返回
捕获404的异常
@app.errorhandler(404) def internal_server_error_one(e): return '网页已被删除或不存在' #这里也一样为了给用户更好的体验,我们把捕获到的错误用return返回
捕获500的异常
@app.errorhandler(500) def internal_server_error(e): return '服务器搬家了'
当然,我们也可以捕获其他的异常,并且抛出异常。
如果我们没有接触过网路编程,也想去发送请求,访问网址,有没有方法呢?
下面给大家推荐个人认为挺好的一款软件postman 这是一款功能很强大的软件,一般用于开发中测试使用,
大家可以百度搜索了解了解,喜好的可以下载使用(当然只是个人感觉挺好的一款软件)
在开发的过程中,如果两个开发项目版面不兼容,如python2.0与python3.0,我们如何解决呢?
虚拟环境:
虚拟环境是为了给项目提供独立的安装环境,防止多项目依赖冲突:
虚拟环境安装
pip install virtualenv
进入项目安装虚拟目录
virtualenv venv
进入命令目录
cd ./venv/Scripts
激活虚拟环境
activate
注意:在这里我们如果发现激活虚拟环境失败,我们可以看看自己的路径是否带有中文名,如果有中文名我们可以用:
virtualenv --no-setuptools --no-pip --no-wheel venv
在开发的过程中 我们的文件名和路径尽量不要使用中文,最好不要使用中文,
使用中文文件名和路径在以后的开发中经常会才出现你意想不到的错误
离开虚拟环境
deactivate