django主动抛出403异常的方法详解


Posted in Python onJanuary 04, 2019

前言

网上的做法基本都是下面的代码

return HttpResponseForbidden()

试了一下,效果一般,没有异常页面显示,最终显示的是浏览器的异常页面,如下图:

django主动抛出403异常的方法详解

设置方法如下:

如果要想让服务器截获异常并且显示错误页可以用下面的方式:

id = request.GET.get('id', '')
timestamp = request.GET.get('timestamp', '')
accesskey = request.GET.get('accesskey', '')
 
if timestamp == '' or accesskey == '' or id == '':
 raise PermissionDenied

此时访问就会显示正常的错误页了,如下

django主动抛出403异常的方法详解

django 错误页面定义方法:

urls.py加入如下代码:

handler403 = permission_denied
handler404 = page_not_found
handler500 = page_error

相关view代码:

# Create your views here.
def page_not_found(request):
 return HttpResponseRedirect('/static/error_pages/404.html')
 
 
def page_error(request):
 return HttpResponseRedirect('/static/error_pages/500.html')
 
 
def permission_denied(request):
 return HttpResponseRedirect('/static/error_pages/403.html')

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Python 相关文章推荐
Python查询阿里巴巴关键字排名的方法
Jul 08 Python
python 的列表遍历删除实现代码
Apr 12 Python
Python实现类似jQuery使用中的链式调用的示例
Jun 16 Python
Python3中简单的文件操作及两个简单小实例分享
Jun 18 Python
pyhton列表转换为数组的实例
Apr 04 Python
Python实现多线程的两种方式分析
Aug 29 Python
浅谈解除装饰器作用(python3新增)
Oct 15 Python
使用python 写一个静态服务(实战)
Jun 28 Python
python多线程案例之多任务copy文件完整实例
Oct 29 Python
详解Python中字符串前“b”,“r”,“u”,“f”的作用
Dec 18 Python
python多项式拟合之np.polyfit 和 np.polyld详解
Feb 18 Python
python实现马丁策略回测3000只股票的实例代码
Jan 22 Python
pyspark操作MongoDB的方法步骤
Jan 04 #Python
详解Appium+Python之生成html测试报告
Jan 04 #Python
python虚拟环境迁移方法
Jan 03 #Python
对django xadmin自定义菜单的实例详解
Jan 03 #Python
在Python中关于使用os模块遍历目录的实现方法
Jan 03 #Python
Python代码打开本地.mp4格式文件的方法
Jan 03 #Python
python paramiko利用sftp上传目录到远程的实例
Jan 03 #Python
You might like
使用PHPMyAdmin修复论坛数据库的图文方法
2012/01/09 PHP
CURL状态码列表(详细)
2013/06/27 PHP
php正确输出json数据的实例讲解
2018/08/21 PHP
JavaScript通过join函数连接数组里所有元素的方法
2015/03/20 Javascript
js实现仿京东2级菜单效果(带延时功能)
2015/08/27 Javascript
基于Node.js实现nodemailer邮件发送
2016/01/26 Javascript
$.browser.msie 为空或不是对象问题的多种解决方法
2017/03/19 Javascript
JS排序之冒泡排序详解
2017/04/08 Javascript
angularjs实现猜数字大小功能
2020/05/20 Javascript
Vue实现自定义下拉菜单功能
2018/07/16 Javascript
解决vue同一slot在组件中渲染多次的问题
2018/09/06 Javascript
详解Vue改变数组中对象的属性不重新渲染View的解决方案
2018/09/21 Javascript
ng-repeat指令在迭代对象时的去重方法
2018/10/02 Javascript
ES6知识点整理之对象解构赋值应用示例
2019/04/17 Javascript
小程序怎样让wx.navigateBack更好用的方法实现
2019/11/01 Javascript
vue项目使用高德地图的定位及关键字搜索功能的实例代码(踩坑经验)
2020/03/07 Javascript
vue实现移动端拖动排序
2020/08/21 Javascript
Python中if __name__ == '__main__'作用解析
2015/06/29 Python
Python selenium 三种等待方式详解(必会)
2016/09/15 Python
使用Python脚本和ADB命令实现卸载App
2017/02/10 Python
Python基于identicon库创建类似Github上用的头像功能
2017/09/25 Python
Python3生成手写体数字方法
2018/01/30 Python
flask框架中勾子函数的使用详解
2018/08/01 Python
Django 内置权限扩展案例详解
2019/03/04 Python
python实现海螺图片的方法示例
2019/05/12 Python
CSS3 选择器 属性选择器介绍
2012/01/21 HTML / CSS
HTML5: Web 标准最巨大的飞跃
2008/10/17 HTML / CSS
美赞臣营养马来西亚旗舰店:Enfagrow马来西亚
2019/07/26 全球购物
新加坡第一大健康与美容零售商:屈臣氏新加坡(Watsons Singapore)
2020/12/11 全球购物
优秀教师的感人事迹
2014/02/04 职场文书
运动会广播稿150字
2014/02/19 职场文书
工程质量承诺书
2014/03/27 职场文书
铁路安全事故反思
2014/04/26 职场文书
美食节目策划方案
2014/05/31 职场文书
大学生档案自我鉴定(2篇)
2014/10/14 职场文书
入党转正申请自我鉴定
2019/06/25 职场文书