flask的debug模式下,网页输入pin码进行调试

  网站后端Python+Flask .FLASK调试模式之开启DEBUG与PIN使用?

 

 

 

 

自动加载:

# 方式一


1
2
if  __name__  = =  '__main__' :
     app.run(host = '0.0.0.0' , port = 9000 , debug = True )

# 方式二


1
2
3
if  __name__  = =  '__main__' :
     app.debug  =  True
     app.run(host = '0.0.0.0' , port = 9000 )

说明: 可通过如上两种方式开启调试模式,调试模式下PY文件被修改会自动重新加载,资源文件/模版文件/配置文件修改必须重启生效~这个确实木有办法~

 

异常调试:

# 代码区


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
#
# Authors: limanman
# 51CTOBG: http://xmdevops.blog.51cto.com/
# Purpose:
#
"""
# 说明: 导入公共模块
from  flask  import  Flask
# 说明: 导入其它模块
app  =  Flask(__name__)
@app .route( '/' )
def  hello_word():
     return  None
if  __name__  = =  '__main__' :
     app.run(host = '0.0.0.0' , port = 9000 , debug = True )

 

# 显示区


1
2
3
4
* Restarting with stat
  * Debugger is active!
  * Debugger pin code: 160-043-266
  * Running on http://0.0.0.0:9000/ (Press CTRL+C to quit)

 

# 调试区

wKioL1gPaj3DDVc0AAAiPGqyUOo428.png

说明: 当错误发生时会自动返回一个能获得错误上下文及可执行代码的调试界面,WerkZeug为了安全性,在启动时会生成一个随机的PIN私人认证码,当第一次启动调试器进入错误堆栈模式时会强制输入PIN码,然后WerkZeug会将其存储在COOKIE中,失效时间为8小时

 

 在页面的console控制台中,可以使用dump()打印出堆栈信息,使用dump(obj)打印某个地址的堆栈信息

 

在有些flask项目的控制台,如果看不到pin的信息“Debugger pin code: 323-115-793”,那么试着去日志里查看,因为这些信息会默认写入根log日志里

其实,一旦引入日志模块logging,控制台的很多信息(访问网站记录url、访问数据库信息、异常信息等)都会默认写入根log日志文件中

 

参考:

1、http://blog.51cto.com/xmdevops/1865636

2、http://werkzeug.pocoo.org/docs/0.13/debug/

转载于:https://www.cnblogs.com/shengulong/p/8072318.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值