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字典数据对象拆分的简单实现方法
Dec 05 Python
Python3简单实例计算同花的概率代码
Dec 06 Python
matplotlib简介,安装和简单实例代码
Dec 26 Python
Python程序包的构建和发布过程示例详解
Jun 09 Python
对python while循环和双重循环的实例详解
Aug 23 Python
Python3.8对可迭代解包的改进及用法详解
Oct 15 Python
TensorFlow dataset.shuffle、batch、repeat的使用详解
Jan 21 Python
Tensorflow中的降维函数tf.reduce_*使用总结
Apr 20 Python
Python实现自动签到脚本功能
Aug 20 Python
浅析Python 中的 WSGI 接口和 WSGI 服务的运行
Dec 09 Python
Python开发.exe小工具的详细步骤
Jan 27 Python
Django实现drf搜索过滤和排序过滤
Jun 21 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
德生PL330的评价与改造
2021/03/02 无线电
神盾加密解密教程(三)PHP 神盾解密工具
2014/06/08 PHP
php实现批量压缩图片文件大小的脚本
2014/07/04 PHP
php实现用于计算执行时间的类实例
2015/04/18 PHP
PHP实现加密文本文件并限制特定页面的存取的效果
2016/10/21 PHP
Laravel框架下的Contracts契约详解
2020/03/17 PHP
浅析PHP中json_encode与json_decode的区别
2020/07/15 PHP
JavaScript性能优化 创建文档碎片(document.createDocumentFragment)
2010/07/13 Javascript
jQuery 联动日历实现代码
2012/05/31 Javascript
《JavaScript DOM 编程艺术》读书笔记之DOM基础
2015/01/09 Javascript
JavaScript中String.match()方法的使用详解
2015/06/06 Javascript
怎样判断jQuery当前元素是隐藏还是显示
2016/11/23 Javascript
利用js获取下拉框中所选的值
2016/12/01 Javascript
微信小程序实战之登录页面制作(5)
2020/03/30 Javascript
JS自定义滚动条效果简单实现代码
2020/10/27 Javascript
js定时器+简单的动画效果实例
2017/11/10 Javascript
解决微信小程序云开发中获取数据库的内容为空的方法
2019/05/15 Javascript
构建一个JavaScript插件系统
2020/10/20 Javascript
[01:00:13]完美世界DOTA2联赛 LBZS vs Forest 第一场 11.07
2020/11/09 DOTA
Python爬取三国演义的实现方法
2016/09/12 Python
用Python实现KNN分类算法
2017/12/22 Python
使用python和Django完成博客数据库的迁移方法
2018/01/05 Python
numpy.linspace 生成等差数组的方法
2018/07/02 Python
Python3-异步进程回调函数(callback())介绍
2020/05/02 Python
使用python库xlsxwriter库来输出各种xlsx文件的示例
2020/09/01 Python
python中的时区问题
2021/01/14 Python
eDreams葡萄牙:全球最大的在线旅行社之一
2019/04/15 全球购物
Haggar官网:美国男装品牌
2020/02/16 全球购物
StringBuilder和String的区别
2015/05/18 面试题
考试作弊检讨书大全
2014/02/18 职场文书
五心教育心得体会
2014/09/04 职场文书
泸县召开党的群众路线教育实践活动总结大会新闻稿
2014/10/21 职场文书
Mac环境Nginx配置和访问本地静态资源的实现
2021/03/31 Servers
Windows11里微软已经将驱动程序安装位置A盘删除
2021/11/21 数码科技
在Oracle表中进行关键词搜索的过程
2022/06/10 Oracle
利用Python脚本写端口扫描器socket,python-nmap
2022/07/23 Python