1.使用HttpResponseRedirect
from django.http import HttpResponseRedirect
2.使用redirect和reverse
状态码:301和302
301和302的区别:
相同点:都表示重定向,浏览器在拿到服务器返回的这个状态码后会自动跳转到一个新的URL地址
不同点:
301比较常用的场景是使用域名跳转。比如,我们访问 http://www.baidu.com 会跳转到https://www.baidu.com表示旧地址A的资源已经被永久地移除了
302用来做临时跳转,比如未登陆的用户访问用户中心重定向到登录页面。表示旧地址A的资源还在(仍然可以访问),这个重定向只是临时地从旧地址A跳转到地址B
1.使用HttpResponseRedirect
from django.http import HttpResponseRedirect
2.使用redirect和reverse
状态码:301和302
301和302的区别:
相同点:都表示重定向,浏览器在拿到服务器返回的这个状态码后会自动跳转到一个新的URL地址
不同点:
301比较常用的场景是使用域名跳转。比如,我们访问 http://www.baidu.com 会跳转到https://www.baidu.com表示旧地址A的资源已经被永久地移除了
302用来做临时跳转,比如未登陆的用户访问用户中心重定向到登录页面。表示旧地址A的资源还在(仍然可以访问),这个重定向只是临时地从旧地址A跳转到地址B