需求:

  进入上线环境,用户并没有权力知道出错信息,那我们需要对不同的出错信息返回不同页面提示,提升用户的体验

问题原因:

  生产环境下,用户输入的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页面处理相关推荐

  1. Myeclipse中项目没有代码错误提示,jsp页面无编译迹象?如何解决

    在使用Myeclipse开发项目时,发现jsp页面中嵌入的java代码没有编译的迹象,错误的get方法没有报错,没有报错信息我们如何知道我们开发的内容是正确的呢? 接下来就演示一下如何解决

  2. 使用ajax不刷新页面获取、操作数据

    在使用jsp或html时,利用ajax达到不刷新页面就可以获取.操作数据. 首先上代码 (html+js) 在此处需要引入jquery插件 <!-- 这是页面部分 html--> < ...

  3. canvas java 上传截图_在Vue项目中使用html2canvas生成页面截图并上传

    使用方法 项目中引入 npm install html2canvas html代码 //html代码 js代码 // 引入html2canvas import html2canvas from 'ht ...

  4. 文本框可编辑查看页面

    <!DOCTYPE html> <html><head><meta charset="utf-8" /><title>文 ...

  5. SpringBoot-web开发(二): 页面和图标定制(源码分析)

    [SpringBoot-web系列]前文: SpringBoot-web开发(一): 静态资源的导入(源码分析) 目录 一.首页 1. 源码分析 2. 访问首页测试 二.动态页面 1. 动态资源目录t ...

  6. web站点的欢迎页面

    JavaWeb系列教程 JavaWeb-Servlet 模拟Servlet本质 使用IDEA开发Servlet程序 Servlet对象的生命周期 适配器(GenericServlet)改造Servle ...

  7. 前端的单页面模式和多页面模式

    一.前言 前端部分的搭建,需要考虑使用哪种模式进行页面之间的跳转交互, 而项目内的页面交互,不可避免的需要相互之间的数据共享. 这就引出了本篇博客的目的,一起来谈谈:项目前端部分的构建方式以及数据共享 ...

  8. java爬取验证码图片_JAVA HttpClient实现页面信息抓取(获取图片验证码并传入cookie实现信息获取)...

    JAVA HttpClient实现页面信息抓取(获取图片验证码并传入cookie实现信息获取) 发布时间:2018-05-18 16:41, 浏览次数:632 , 标签: JAVA HttpClien ...

  9. 微信小程序页面之间数据传递

    微信小程序跳转界面传递数据,要传递的数据拼接在url 后面实现 下面看一个简单的demo 传递数据 要传递界面 wxml <!--index.wxml--> <view class= ...

最新文章

  1. 使用树形结构保存实体
  2. windows连接linux系统telnet端口23无法连接的问题
  3. 人工神经网络相对于支持向量机有什么优势? [关闭]
  4. 基于Xcode安装CocoaPods报错
  5. 干了10年软件工程师,我学到10个教训
  6. 数据扩张:数据的杠杆作用
  7. iOS UIKit:UITableView
  8. 图方法:二分无向图的联通子图查找
  9. [WF2011] MachineWorks(李超树优化dp)
  10. 部署OpenStack问题汇总(五)--openstack中删除虚拟主机,状态一直未deleting
  11. 基于JAVA+SpringMVC+Mybatis+MYSQL的少儿网站教育管理系统
  12. 蓝桥杯备战(一)3n+1问题
  13. 高速计算机的应用领域概括,河北计算机一级考试题-MS模拟试题
  14. ubuntu安装PYQT4
  15. 论文写作过程中用到的软件、网站分享
  16. 坯子库无法一键安装插件没用_坯子插件库_SketchUp坯子库(su插件管理器)下载 v2018.3官方版 - 121下载站...
  17. 网站页面设计的原则有哪些呢?
  18. 网络编程:TCP客户端的搭建流程(附源码)
  19. 萨姆休斯顿州立大学计算机专业,萨姆休斯顿州立大学排名在2020年USNEWS美国最佳综合大学排名第281...
  20. gvim 缩写/简写 方法, 缩写 gvim的方法

热门文章

  1. struts 2 时间控件
  2. phpstorm,webstorm取消自动保存并标识修改的文件为星星标记
  3. 蓝桥杯 ALGO-39 算法训练 数组排序去重
  4. java的ssh获取id,使用SSH公钥(id_dsa.pub)实现免密码登录
  5. python openpyxl创建excel文件-python之openpyxl生成excel文件
  6. 观电影《头号玩家》有感
  7. Keepalived 配置实例
  8. MySQL一主二从复制环境切换主从库
  9. 聊聊hystrix的semaphore.maxConcurrentRequests属性
  10. 【转】使用CSS 禁止文本选择