Django_404_403_500页面处理
需求:
进入上线环境,用户并没有权力知道出错信息,那我们需要对不同的出错信息返回不同页面提示,提升用户的体验
问题原因:
生产环境下,用户输入的url地址不正确,没有对应的view去处理这个url请求,也就是说没有资源,服务器会认为是404错误,页面无法找打,当服务器本身出现问题的时候,也就是某个view逻辑出错,就会返回500错误,当用户访问没有权限的资源,就会返回403错误
那,如何解决这个问题?
Django中会有三个 方法去处理这个问题,handler404,handler500,handler403, 分别处理服务器出现以上错误而返回给用户的内容,这3个方法写在主url入口中
主url:
# 404 页面找不到
handler404 = 'users.views.page_not_find'
# 500 服务器出错
handler500 = 'users.views.page_error'
# 资源不可用
handler403 = 'users.views.resources_not_available'
view中:
# Django异常处理对象
from django.shortcuts import render_to_responsedef page_not_find(request):"""全局404页面处理"""response = render_to_response('404.html', {})response.status_code = 404return responsedef page_error(request):"""全局500页面处理"""response = render_to_response('500.html', {})response.status_code = 500return responsedef resources_not_available(request):"""全局500页面处理"""response = render_to_response('403.html', {})response.status_code = 403return response
转载于:https://www.cnblogs.com/2bjiujiu/p/7465084.html
Django_404_403_500页面处理相关推荐
- Myeclipse中项目没有代码错误提示,jsp页面无编译迹象?如何解决
在使用Myeclipse开发项目时,发现jsp页面中嵌入的java代码没有编译的迹象,错误的get方法没有报错,没有报错信息我们如何知道我们开发的内容是正确的呢? 接下来就演示一下如何解决
- 使用ajax不刷新页面获取、操作数据
在使用jsp或html时,利用ajax达到不刷新页面就可以获取.操作数据. 首先上代码 (html+js) 在此处需要引入jquery插件 <!-- 这是页面部分 html--> < ...
- canvas java 上传截图_在Vue项目中使用html2canvas生成页面截图并上传
使用方法 项目中引入 npm install html2canvas html代码 //html代码 js代码 // 引入html2canvas import html2canvas from 'ht ...
- 文本框可编辑查看页面
<!DOCTYPE html> <html><head><meta charset="utf-8" /><title>文 ...
- SpringBoot-web开发(二): 页面和图标定制(源码分析)
[SpringBoot-web系列]前文: SpringBoot-web开发(一): 静态资源的导入(源码分析) 目录 一.首页 1. 源码分析 2. 访问首页测试 二.动态页面 1. 动态资源目录t ...
- web站点的欢迎页面
JavaWeb系列教程 JavaWeb-Servlet 模拟Servlet本质 使用IDEA开发Servlet程序 Servlet对象的生命周期 适配器(GenericServlet)改造Servle ...
- 前端的单页面模式和多页面模式
一.前言 前端部分的搭建,需要考虑使用哪种模式进行页面之间的跳转交互, 而项目内的页面交互,不可避免的需要相互之间的数据共享. 这就引出了本篇博客的目的,一起来谈谈:项目前端部分的构建方式以及数据共享 ...
- java爬取验证码图片_JAVA HttpClient实现页面信息抓取(获取图片验证码并传入cookie实现信息获取)...
JAVA HttpClient实现页面信息抓取(获取图片验证码并传入cookie实现信息获取) 发布时间:2018-05-18 16:41, 浏览次数:632 , 标签: JAVA HttpClien ...
- 微信小程序页面之间数据传递
微信小程序跳转界面传递数据,要传递的数据拼接在url 后面实现 下面看一个简单的demo 传递数据 要传递界面 wxml <!--index.wxml--> <view class= ...
最新文章
- 使用树形结构保存实体
- windows连接linux系统telnet端口23无法连接的问题
- 人工神经网络相对于支持向量机有什么优势? [关闭]
- 基于Xcode安装CocoaPods报错
- 干了10年软件工程师,我学到10个教训
- 数据扩张:数据的杠杆作用
- iOS UIKit:UITableView
- 图方法:二分无向图的联通子图查找
- [WF2011] MachineWorks(李超树优化dp)
- 部署OpenStack问题汇总(五)--openstack中删除虚拟主机,状态一直未deleting
- 基于JAVA+SpringMVC+Mybatis+MYSQL的少儿网站教育管理系统
- 蓝桥杯备战(一)3n+1问题
- 高速计算机的应用领域概括,河北计算机一级考试题-MS模拟试题
- ubuntu安装PYQT4
- 论文写作过程中用到的软件、网站分享
- 坯子库无法一键安装插件没用_坯子插件库_SketchUp坯子库(su插件管理器)下载 v2018.3官方版 - 121下载站...
- 网站页面设计的原则有哪些呢?
- 网络编程:TCP客户端的搭建流程(附源码)
- 萨姆休斯顿州立大学计算机专业,萨姆休斯顿州立大学排名在2020年USNEWS美国最佳综合大学排名第281...
- gvim 缩写/简写 方法, 缩写 gvim的方法
热门文章
- struts 2 时间控件
- phpstorm,webstorm取消自动保存并标识修改的文件为星星标记
- 蓝桥杯 ALGO-39 算法训练 数组排序去重
- java的ssh获取id,使用SSH公钥(id_dsa.pub)实现免密码登录
- python openpyxl创建excel文件-python之openpyxl生成excel文件
- 观电影《头号玩家》有感
- Keepalived 配置实例
- MySQL一主二从复制环境切换主从库
- 聊聊hystrix的semaphore.maxConcurrentRequests属性
- 【转】使用CSS 禁止文本选择