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实现TCP服务器端与客户端的方法详解
Apr 30 Python
Python计时相关操作详解【time,datetime】
May 26 Python
Python并发编程协程(Coroutine)之Gevent详解
Dec 27 Python
Python常见工厂函数用法示例
Mar 21 Python
Python 删除整个文本中的空格,并实现按行显示
Jul 24 Python
Python常见数字运算操作实例小结
Mar 22 Python
详解Python静态网页爬取获取高清壁纸
Apr 23 Python
解决Django一个表单对应多个按钮的问题
Jul 18 Python
python 截取XML中bndbox的坐标中的图像,另存为jpg的实例
Mar 10 Python
python输出国际象棋棋盘的实例分享
Nov 26 Python
Python字符串的15个基本操作(小结)
Feb 03 Python
python编写函数注意事项总结
Mar 29 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
php 变量未定义等错误的解决方法
2011/01/12 PHP
phpmailer在服务器上不能正常发送邮件的解决办法
2014/07/08 PHP
php socket实现的聊天室代码分享
2014/08/16 PHP
php通过array_merge()函数合并关联和非关联数组的方法
2015/03/18 PHP
php基于dom实现的图书xml格式数据示例
2017/02/03 PHP
Laravel框架自定义公共函数的引入操作示例
2019/04/16 PHP
JavaScript基本对象
2007/01/11 Javascript
JavaScript中的函数声明和函数表达式区别浅析
2015/03/27 Javascript
JavaScript汉诺塔问题解决方法
2015/04/21 Javascript
javascript+css3开发打气球小游戏完整代码
2017/11/28 Javascript
js 提取某()特殊字符串长度的实例
2017/12/06 Javascript
jQuery实现轮播图及其原理详解
2020/04/12 jQuery
layer弹出的iframe层在执行完毕后关闭当前弹出层的方法
2018/08/17 Javascript
Vue中控制v-for循环次数的实现方法
2018/09/26 Javascript
JavaScript创建防篡改对象的方法分析
2018/12/30 Javascript
vue router 传参获取不到的解决方式
2019/11/13 Javascript
JS如何定义用字符串拼接的变量
2020/07/11 Javascript
python中使用%与.format格式化文本方法解析
2017/12/27 Python
详解python分布式进程
2018/10/08 Python
pandas.DataFrame删除/选取含有特定数值的行或列实例
2018/11/07 Python
基于python全局设置id 自动化测试元素定位过程解析
2019/09/04 Python
Python函数中的可变长参数详解
2019/09/12 Python
python 解压、复制、删除 文件的实例代码
2020/02/26 Python
浅析Python的命名空间与作用域
2020/11/25 Python
彻底弄明白CSS3的Media Queries(跨平台设计)
2010/07/27 HTML / CSS
canvas生成带二维码海报的踩坑记录
2019/09/11 HTML / CSS
美国最大的城市服装和运动鞋零售商:Jimmy Jazz
2016/11/19 全球购物
优秀村官事迹材料
2014/01/10 职场文书
上班迟到检讨书
2014/01/10 职场文书
求职信需要的五点内容
2014/02/01 职场文书
森林病虫害防治方案
2014/06/02 职场文书
夏洛特的网观后感
2015/06/15 职场文书
java固定大小队列的几种实现方式详解
2021/07/15 Java/Android
pandas中对文本类型数据的处理小结
2021/11/01 Python
详解Python中__new__方法的作用
2022/03/31 Python
MySQL去除密码登录告警的方法
2022/04/20 MySQL